Tobin Ehlis [Thu, 2 Jun 2016 13:46:52 +0000 (07:46 -0600)]
layers: Add getBufferNode() helper
Move core_validation bufferMap to use unique_ptr to BUFFER_NODE.
Perform bufferMap look-ups using getBufferNode() helper function.
Update DescriptorSet class to use getBufferNode() helper and store
layer_data instead of bufferMap.
Tobin Ehlis [Wed, 1 Jun 2016 22:41:17 +0000 (16:41 -0600)]
layers: Make layer_data visible to DescriptorSet
This is the start of migrating core_validation::layer_data to be
visible in DescriptorSet class.
DescriptorSet class can't see the contents of layer_data, so it also
needs the get<Object>() helper functions to look up items from the
maps. This first change only brings along getSetNode() utility
function so only set_map references can be removed.
Will add follow-on CLs to remove more maps from DescriptorSet class
and bring in more utility functions.
Karl Schultz [Thu, 2 Jun 2016 22:48:30 +0000 (16:48 -0600)]
Update BUILD.md
Remove statement indicating that the Linux SDK installs the loader and layers to system libraries; it no longer does this.
Dustin Graves [Tue, 31 May 2016 22:32:29 +0000 (16:32 -0600)]
cmake: Fix MSVCRT override
Fix the CMake code that overrides the /MD flag with the /MT flag for
the Windows demo and loader projects. The CMake debug and release
variables were set to /MTd and /MT, overriding all existing debug
and release settings.
Now replacing /MD with /MT in the debug and release variables,
without losing other debug/release settings. Also performing
the MD/MT substitution for all release and debug configurations.
Change-Id: Id4a57c38bde0d909a95e7a49d9867029829e2c61
Tobin Ehlis [Wed, 1 Jun 2016 17:56:42 +0000 (11:56 -0600)]
layers: Comment update
The behavior of the PreCallValidateAllocateDescriptorSets slightly
changed so updating comment accordingly.
Tobin Ehlis [Wed, 1 Jun 2016 17:33:50 +0000 (11:33 -0600)]
layers: Pass common data between pre/post AllocDescriptorSets
With the break between PreValidate* and PostRecord* calls in the layers
we can suffer having to do some repeat work in the Post step. In order
to prevent this, this CL slightly modifies the interface to pass common
data between the pre/post calls in a custom AllocateDescriptorSetsData
struct.
I initially attempted to fill this data in a separate function that
would preceed the PreValidate* call, but such a function would need to
include some validation as it includes map checks which may fail.
The simplest solution, then, seems to be passing a ptr to the common
data to the PreValidate* function who then fills the data. If the
validation and call down the chain succeed, the PostRecord* function
then takes a ptr to the common data to prevent having to redo the
work that was done at validation time.
Tobin Ehlis [Thu, 26 May 2016 17:21:59 +0000 (11:21 -0600)]
layers: Add DescriptorSet interface for allocation
Create a top-level "Validate" and "Perform" interface for the
vkAllocateDescriptorSets() function in DescriptorSet class.
Refactor AllocateDescriptorSets() in core_validation to use the
new interface. All checks are now performed in a "Pre" function
and all state updates are recorded in a "Post" function.
Tobin Ehlis [Thu, 26 May 2016 17:20:13 +0000 (11:20 -0600)]
layers: Migrate DESCRIPTOR_POOL_NODE to type header
iostrows [Thu, 2 Jun 2016 13:56:26 +0000 (15:56 +0200)]
layers: GH611 Fix dynamic offset indexing
Chia-I Wu [Thu, 19 May 2016 23:11:22 +0000 (07:11 +0800)]
layers: simplify v0 function implementations
Since each of the layer library contains only a layer, we can simplify v0
functions by making them wrappers to the contained layer's corresponding
commands.
While we have to make changes to each layer individually, all the changes
should be the same in spirit. The exception is vk-layer-generate.py where
the missing vkEnumerateDeviceExtensionProperties is also added.
Dustin Graves [Mon, 30 May 2016 22:14:27 +0000 (16:14 -0600)]
layers: More noautovalidity processing for structs
Apply 'noautovalidity' code generation logic to struct members.
Previously, struct pointers tagged as noautovalidity were ignored by
the code generator, but the members of non-NULL struct pointers
were still processed. Now both the struct pointer and the struct
members are ignored when the struct pointer has the 'noautovalidity'
attribute.
Change-Id: I14bc231210f2440fb8bb3df8c73ef165100f0daa
Mark Mueller [Mon, 30 May 2016 22:46:38 +0000 (16:46 -0600)]
layers: LX506 fix vkFlushMappedMemoryRanges validation error
Fix LX506: vkFlushMappedMemoryRanges validation error
with VkMappedMemoryRange::size = VK_WHOLE_SIZE.
Resolution: Change test of size variable to correctly test the
size passed by application against the relevant mapped memory
Change-Id: I6d855482985512b5096696f5c37346dde8a391ac
David Pinedo [Wed, 1 Jun 2016 16:31:51 +0000 (10:31 -0600)]
winrtinstaller: update signature on powershell config script
Mark Young [Tue, 31 May 2016 21:25:46 +0000 (15:25 -0600)]
winrt: Disable temp log in RT install.
Mark Young [Tue, 31 May 2016 20:34:08 +0000 (14:34 -0600)]
winrt: Add more Powershell logging to RT install
RT install Powershell script was using echo. Now use transcript
recording (which will also include OS, Powershell version, and other
info). Also, use Write-Host, Write-Warning, and Write-Error to
make errors and warnings more obvious.
NOTE: This includes intentional debug code enablement so I can
retrieve an RT install that does not remove a copy of the
Powershell log file. This will be fixed quickly after the RT install
is generated on CruiseControl.
Tobin Ehlis [Tue, 31 May 2016 19:59:26 +0000 (13:59 -0600)]
tests: Add test for new renderpass clearValue check
Add test to hit the case where number of CLEAR loadOps in used
by renderPass attachments is greater than clearValueCount given
at renderPass begin time.
Also update documentation.
Tobin Ehlis [Tue, 31 May 2016 19:20:20 +0000 (13:20 -0600)]
layers: Kill redundant check
At this point in the code we already know that renderPass is
valid so no need to re-check it.
Tobin Ehlis [Tue, 31 May 2016 19:06:24 +0000 (13:06 -0600)]
layers: GH601 Add check for clearValueCount
We were missing check "clearValueCount must be greater than or equal
to the number of attachments in renderPass that specify a loadOp of VK_ATTACHMENT_LOAD_OP_CLEAR" (Vulkan spec 1.0.15 section 7.4)
This change adds that check.
Cody Northrop [Tue, 31 May 2016 15:36:37 +0000 (09:36 -0600)]
docs: Improve OSX steps for Android
Cody Northrop [Wed, 25 May 2016 14:23:45 +0000 (08:23 -0600)]
toolchain: Simplify setup for shaderc, use https instead of git@
Tobin Ehlis [Wed, 25 May 2016 17:12:50 +0000 (11:12 -0600)]
tests: Add descriptor usage bit tests
When updating descriptor sets, correct usage bit must be set depending
on the type of update. New test, DSUsageBitsErrors cycles through all
of the different update types that can hit usage bit errors and
intentionally hits all of the errors.
Tobin Ehlis [Wed, 25 May 2016 15:24:36 +0000 (09:24 -0600)]
layers: DescriptorSet class indentation fixes
More cases where "else" blocks weren't needed because the
"if" block returns.
Tobin Ehlis [Tue, 24 May 2016 19:07:12 +0000 (13:07 -0600)]
layers: Improve descriptor copy update validation
Add buffer usage bit validation for descriptor copy updates.
Pass down known descriptor type to copy validate function to
avoid having to look it up again.
Fix various incorrect "write" references in the copy update
error messages.
Tobin Ehlis [Tue, 24 May 2016 18:35:57 +0000 (12:35 -0600)]
layers: Remove unneeded else block
The "if" case returns so no need for this else block or the indentation
that it includes.
Tobin Ehlis [Tue, 24 May 2016 18:33:42 +0000 (12:33 -0600)]
layers: Add usage bit validation for buffer descriptors
Verify that buffer used to update all buffer descriptor types (texel or
general) has the correct usage bits set.
descriptor
Tobin Ehlis [Tue, 24 May 2016 17:14:43 +0000 (11:14 -0600)]
layers: Add usage bit validation for image descriptors
Verify that images used in imageView that's passed to various image
descriptor types have the correct usage bits set.
Tobin Ehlis [Thu, 26 May 2016 19:39:11 +0000 (13:39 -0600)]
layers: Update freeDescriptorSet() comment
Tobin Ehlis [Thu, 26 May 2016 19:30:45 +0000 (13:30 -0600)]
layers: Refactor FreeDescriptorSets()
Create PreValidate/PostRecord functions for FreeDescriptorSets().
Currently the validation and state updates are handled in-line
in these functions, but this change makes it easy to migrate the
code to descriptor pool class without affecting top-level
intercept function.
Tobin Ehlis [Thu, 26 May 2016 19:12:38 +0000 (13:12 -0600)]
layers: Make layer_data const in getPoolNode()
Remove "[]" map operator and use iterator from find instead
to return pool ptr so that layer_data param can be const.
This will allow this function to be used from "PreValidate" calls
where no state is changed.
Chris Forbes [Sun, 29 May 2016 23:47:31 +0000 (11:47 +1200)]
layers: take better advantage of emplace_back in descriptor sets
Doesn't win us anything to use emplace_back to invoke a copy
constructor. Construct the unique_ptr from raw ptr in-place instead.
Signed-off-by: Chris Forbes <chrisforbes@google.com>
Chia-I Wu [Sun, 29 May 2016 23:36:59 +0000 (07:36 +0800)]
add vk-layer-introspect
It can be used to validate the introspection functions or generate the
manifest file for a layer library.
$ ./vk-layer-introspect build/layers/libVkLayer_core_validation.so
{
"file_format_version": "1.0.0",
"layer": {
"api_version": "1.0.13",
"description": "LunarG Validation Layer",
"implementation_version": "1",
"instance_extensions": [
{
"name": "VK_EXT_debug_report",
"spec_version": "2"
}
],
"library_path": "./libVkLayer_core_validation.so",
"name": "VK_LAYER_LUNARG_core_validation",
"type": "GLOBAL"
}
}
Chris Forbes [Tue, 31 May 2016 04:34:40 +0000 (16:34 +1200)]
layers: Remove old hacks for imprecise descriptor tracking for compute
We do it properly now.
Signed-off-by: Chris Forbes <chrisforbes@google.com>
Chris Forbes [Tue, 31 May 2016 04:33:48 +0000 (16:33 +1200)]
layers: Do accurate draw-time validation of descriptors used by compute
Signed-off-by: Chris Forbes <chrisforbes@google.com>
Chris Forbes [Tue, 31 May 2016 04:45:13 +0000 (16:45 +1200)]
layers: Make precise DS validation work for both bind points
Signed-off-by: Chris Forbes <chrisforbes@google.com>
Chris Forbes [Tue, 31 May 2016 04:09:42 +0000 (16:09 +1200)]
layers: Wire up validation of compute pipelines
Signed-off-by: Chris Forbes <chrisforbes@google.com>
Tobin Ehlis [Thu, 26 May 2016 12:14:30 +0000 (06:14 -0600)]
tests: Update doc for dynamic state tests
Mark Young [Mon, 30 May 2016 16:07:04 +0000 (10:07 -0600)]
winrt: Add more error logic to Powershell script
Add more error detection logic to the install config Powershell
script to help track down recent failures.
Chris Forbes [Thu, 26 May 2016 23:58:23 +0000 (11:58 +1200)]
layers: Fix safe struct codegen of static arrays
VC++ doesn't support this particular corner of C++11.
Signed-off-by: Chris Forbes <chrisforbes@google.com>
Tobin Ehlis [Mon, 23 May 2016 22:02:29 +0000 (16:02 -0600)]
layers: Handle static arrays in codegen
Update safe_struct codegen to handle the case of a static array
in a struct. This removes exceptions for VkDebugMarkerMarkerInfoEXT
and VkPipelineColorBlendStateCreateInfo so they can be treated
as all other structs.
Tobin Ehlis [Tue, 24 May 2016 22:47:36 +0000 (16:47 -0600)]
layers: Fix ImageSampler immut sampler check
Was missing IsImmutableSampler() override function for the
ImageSamplerDescriptor class.
Mark Lobodzinski [Tue, 24 May 2016 21:44:50 +0000 (15:44 -0600)]
layers: Use correct log_msg calls in swapchain
Swapchain layer was making a couple of calls directly to
debug_report_log_msg instead of going through log_msg.
Change-Id: I206210bb0d109778c90283144075a77fc459210b
Karl Schultz [Tue, 24 May 2016 19:49:59 +0000 (13:49 -0600)]
build: Fix Windows compilation warnings
Use false/true instead of 0/1 in recently-added std::bind calls.
Jon Ashburn [Fri, 20 May 2016 22:43:12 +0000 (16:43 -0600)]
layers: lvlgh 548, remove obsolete RPATH
Change-Id: Iaba3990d2f417375cfa84a295d7184cedb491da6
Michael Lentine [Tue, 24 May 2016 16:12:39 +0000 (11:12 -0500)]
Merge pull request #583 from lentinem/mlentine-clearpriorfences
Clear priorFences on reset and remove waited on fences from other lists.
Michael Lentine [Tue, 24 May 2016 14:49:25 +0000 (09:49 -0500)]
Clear priorFences on reset.
Chia-I Wu [Mon, 16 May 2016 03:21:03 +0000 (11:21 +0800)]
threading: avoid invalid GIPA call in vkCreateDevice
Save VkInstance in layer_data so that we query vkCreateDevice with a valid
instance.
Chia-I Wu [Mon, 16 May 2016 03:18:31 +0000 (11:18 +0800)]
threading: handle device commands in GetInstanceProcAddr
Call layer_intercept_proc in GetInstanceProcAddr.
Chia-I Wu [Mon, 16 May 2016 03:17:26 +0000 (11:17 +0800)]
threading: no interface functions in layer functions
Move handling of interface functions in threading::GetInstanceProcAddr to
v0's vkGetInstanceProcAddr.
Chia-I Wu [Mon, 16 May 2016 03:14:51 +0000 (11:14 +0800)]
threading: assert valid instance/device in vkGet*ProcAddr
device is always valid in vkGetDeviceProcAddr. instance is valid if pName
is not intercepted in layer_intercept_instance_proc.
Chia-I Wu [Mon, 16 May 2016 02:16:30 +0000 (10:16 +0800)]
threading: improve EnumerateDeviceExtensionProperties
Call down the next layer unless pLayerName is threading.
Chia-I Wu [Mon, 16 May 2016 02:13:45 +0000 (10:13 +0800)]
threading: add threading::layerProps
Replace globalLayerProps and deviceLayerProps with layerProps. There is
no plan to define more than one layer in the same namespace.
Chia-I Wu [Mon, 16 May 2016 02:02:06 +0000 (10:02 +0800)]
threading: drop vk prefix for layer functions
Drop VK_LAYER_EXPORT as well.
Chia-I Wu [Mon, 16 May 2016 01:58:50 +0000 (09:58 +0800)]
threading: put layer functions into a namespace
Put all layer fucntions/data into threading namespace. I had to add some
wrappers to make everything work.
This also removes vkEnumerateInstance*Properties from procmap. procmap is
used in vkGetDeviceProcAddr and it should not contain
vkEnumerateInstance*Properties in the first place.
Chia-I Wu [Mon, 16 May 2016 03:48:11 +0000 (11:48 +0800)]
threading: decorate Vulkan commands with VKAPI_ATTR
Chia-I Wu [Mon, 16 May 2016 00:58:07 +0000 (08:58 +0800)]
threading: move vkEnumerate*Properties around
Move them toward the end of the file.
Chia-I Wu [Mon, 16 May 2016 23:57:15 +0000 (07:57 +0800)]
unique_objects: avoid invalid GIPA call in vkCreateDevice
Save VkInstance in layer_data so that we query vkCreateDevice with a valid
instance.
Chia-I Wu [Mon, 16 May 2016 23:57:15 +0000 (07:57 +0800)]
object_tracker: avoid invalid GIPA call in vkCreateDevice
Save VkInstance in layer_data so that we query vkCreateDevice with a valid
instance.
Chia-I Wu [Mon, 16 May 2016 23:43:59 +0000 (07:43 +0800)]
vk-layer-generate.py: handle device commands in GetInstanceProcAddr
Per commit
5bf16c33b9c1f38fc467d94716f276620a265327, extension check is
bypassed in GetInstanceProcAddr for VK_KHR_swapchain functions.
Chia-I Wu [Mon, 16 May 2016 23:39:31 +0000 (07:39 +0800)]
vk-layer-generate.py: assert valid instance/device in vkGet*ProcAddr
"device" should be always valid in vkGetDeviceProcAddr. "instance" should
be valid in vkGetInstanceProcAddr when the command is not intercepted by
intercept_core_instance_command.
Chia-I Wu [Fri, 13 May 2016 06:37:49 +0000 (14:37 +0800)]
vk-layer-generate.py: drop vk prefix for layer functions
Drop VK_LAYER_EXPORT as well.
Chia-I Wu [Sun, 15 May 2016 23:43:38 +0000 (07:43 +0800)]
vk-layer-generate.py: no interface functions in layer functions
Move handling of interface functions out of layers' GetInstanceProcAddr to
v0's vkGetInstanceProcAddr.
Chia-I Wu [Fri, 13 May 2016 06:07:36 +0000 (14:07 +0800)]
vk-layer-generate.py: put layer functions into a namespace
Move everything into namespace object_tracker and unique_objects
respectively. I had to add some wrappers to make everything work.
Chia-I Wu [Fri, 13 May 2016 06:06:08 +0000 (14:06 +0800)]
vk-layer-generate.py: simplify vkEnumerate*Properties generation
Add _gen_layer_interface_v0_functions to generate all of them in one
place. Get rid of deviceLayerProps as it is always the same as
globalLayerProps.
Chia-I Wu [Mon, 16 May 2016 05:01:39 +0000 (13:01 +0800)]
vk-layer-generate.py: add intercept_<ext>_command
Add intercept_<ext>_command to return intercepted extension commands.
Invoke them from vkGet*ProcAddr.
Chia-I Wu [Mon, 16 May 2016 04:27:03 +0000 (12:27 +0800)]
vk-layer-generate.py: add intercept_core_*_command
Replace layer_intercept_instance_proc with
intercept_core_instance_command, which returns all intercepted core
instance commands.
Replace layer_intercept_device_proc with intercept_core_device_command,
which returns all intercepted core device commands.
The only user visible difference should be that vkGetDeviceProcAddr now
returns NULL for instance commands.
Tobin Ehlis [Mon, 23 May 2016 19:45:36 +0000 (13:45 -0600)]
layers: Display accessMask in HEX
Michael Lentine [Mon, 23 May 2016 18:18:13 +0000 (13:18 -0500)]
Mark fence in use after the check.
Rene Lindsay [Mon, 23 May 2016 20:00:53 +0000 (13:00 -0700)]
vulkaninfo: Display apiVersion and driverVersion in a more readable format.
Display appropriate VkPhysicalDeviceLimits items in decimal or hex.
Display Memory Property flags by their enum names, instead of integers.
Add some missing properties and enums.
Michael Lentine [Fri, 20 May 2016 22:45:02 +0000 (17:45 -0500)]
layers: Fix query tracking across multiple command buffers on the same queue
Michael Lentine [Fri, 20 May 2016 15:14:00 +0000 (10:14 -0500)]
layers: Fix event tracking to differentiate reading and writing
Chris Forbes [Sun, 22 May 2016 23:29:51 +0000 (11:29 +1200)]
layers: Move and rename validate_descriptor_availability_in_pool
Signed-off-by: Chris Forbes <chrisforbes@google.com>
Chris Forbes [Fri, 20 May 2016 06:27:28 +0000 (18:27 +1200)]
layers: Add getPipelineLayout helper, use it
Signed-off-by: Chris Forbes <chrisforbes@google.com>
Chris Forbes [Fri, 20 May 2016 05:38:44 +0000 (17:38 +1200)]
layers: Use pipeline layout -> ds layout direct map
Signed-off-by: Chris Forbes <chrisforbes@google.com>
Chris Forbes [Fri, 20 May 2016 05:14:32 +0000 (17:14 +1200)]
layers: Use getDescriptorSetLayout helper in more places
Signed-off-by: Chris Forbes <chrisforbes@google.com>
Chris Forbes [Fri, 20 May 2016 05:12:39 +0000 (17:12 +1200)]
layers: Remove more AllocateDescriptorSets noise
Can argue about whether this stuff at INFO level is worthwhile...
Replace the comments with a clearer set of comments.
Signed-off-by: Chris Forbes <chrisforbes@google.com>
Chris Forbes [Fri, 20 May 2016 05:04:07 +0000 (17:04 +1200)]
layers: Further rework to AllocateDescriptorSets
- operator new does not return null, it throws.
- do lookups once, at the start
Signed-off-by: Chris Forbes <chrisforbes@google.com>
Chris Forbes [Fri, 20 May 2016 04:34:01 +0000 (16:34 +1200)]
layers: Get rid of pre-call updates in AllocateDescriptorSets
Moving all the updates later requires that we totalize the required
descriptors by type first, rather than testing each binding's
requirement as we go.
Signed-off-by: Chris Forbes <chrisforbes@google.com>
Chia-I Wu [Sun, 15 May 2016 23:48:14 +0000 (07:48 +0800)]
parameter_validation: avoid invalid GIPA call in vkCreateDevice
Save VkInstance in layer_data so that we query vkCreateDevice with a valid
instance.
Chia-I Wu [Sun, 15 May 2016 23:45:43 +0000 (07:45 +0800)]
parameter_validation: handle device commands in GetInstanceProcAddr
Call intercept_core_device_command in GetInstanceProcAddr.
Chia-I Wu [Sun, 15 May 2016 23:43:38 +0000 (07:43 +0800)]
parameter_validation: no interface functions in layer functions
Move handling of interface functions in
parameter_validation::GetInstanceProcAddr to v0's vkGetInstanceProcAddr.
Chia-I Wu [Sun, 15 May 2016 23:41:17 +0000 (07:41 +0800)]
parameter_validation: refactor GetInstanceProcAddr
Split command intercepting out to intercept_core_instance_command. Assert
that instance is valid if intercept_core_instance_command returns nullptr.
Chia-I Wu [Sun, 15 May 2016 23:37:41 +0000 (07:37 +0800)]
parameter_validation: add intercept_core_device_command
It returns the function pointers for all intercepted core device commands.
Call intercept_core_device_command from GetDeviceProcAddr. Assert that
device is valid in GetDeviceProcAddr.
Chia-I Wu [Sun, 15 May 2016 23:34:09 +0000 (07:34 +0800)]
parameter_validation: improve EnumerateDeviceExtensionProperties
Call down the next layer unless pLayerName is parameter_validation.
Chia-I Wu [Sun, 15 May 2016 23:30:58 +0000 (07:30 +0800)]
parameter_validation: add parameter_validation::global_layer
Replace pc_global_layers with global_layer. There is no plan to define
more than one layer in the same namespace.
Chia-I Wu [Fri, 13 May 2016 06:37:49 +0000 (14:37 +0800)]
parameter_validation: drop vk prefix for layer functions
Drop VK_LAYER_EXPORT as well.
Chia-I Wu [Fri, 13 May 2016 06:07:36 +0000 (14:07 +0800)]
parameter_validation: put layer functions into a namespace
Put all layer fucntions/data into parameter_validation namespace. I had
to add some wrappers to make everything work.
Chia-I Wu [Fri, 13 May 2016 06:06:08 +0000 (14:06 +0800)]
parameter_validation: move vkEnumerate*Properties around
Move them toward the end of the file.
David Pinedo [Fri, 20 May 2016 21:05:44 +0000 (15:05 -0600)]
winrtinstaller: remove dependency on msvcrt redistributables
Loader and demos now use static version of msvcrt.
Runtime Installer no longer installs msvcrt.
Mark Lobodzinski [Thu, 19 May 2016 23:06:56 +0000 (17:06 -0600)]
layers: GH7, Replace bad var names in obj_tracker
C++ reserves variable names that start with an underscore followed
by a capital letter. This patch series replaces or removes these
invalid variable names from the LVL codespace.
Change-Id: I71368cf30e267841cedcc3861afa3444689d71da
Mark Lobodzinski [Thu, 19 May 2016 23:25:59 +0000 (17:25 -0600)]
layers: GH7, Fix bad var names in layer utils
Change-Id: Iec47953ba0611de5c62f4fa876eb02fefca32427
Mark Lobodzinski [Thu, 19 May 2016 23:22:25 +0000 (17:22 -0600)]
demos: GH7, Fix invalid variable names
Change-Id: Iabb217f70d0068284c682d9da6b4c2834902256e
Mark Lobodzinski [Thu, 19 May 2016 23:17:58 +0000 (17:17 -0600)]
headers: GH7, Fix bad variable names in vk_icd.h
Change-Id: Ic78792a71ebedbdb5bae68c47856db1c89a714af
Mark Lobodzinski [Thu, 19 May 2016 23:23:38 +0000 (17:23 -0600)]
layers: GH7, Fix bad var names in core_validation
Change-Id: I4fd1b8bb1cb83af633e04fc561771b6d76732588
Mark Lobodzinski [Thu, 19 May 2016 23:10:58 +0000 (17:10 -0600)]
layers: GH7, Fix bad var names in device_limits
Change-Id: I6dec3fd87f62ac171886562206f3fc528f24bc29
Mark Lobodzinski [Thu, 19 May 2016 23:10:01 +0000 (17:10 -0600)]
layers: GH7, Replace bad variables in image layer
Change-Id: I6c90dafe83bf4e9674b4e32ed867d77b5820006d
Mark Lobodzinski [Thu, 19 May 2016 23:08:10 +0000 (17:08 -0600)]
layers: GH7, Fix bad var names in threading layer
Change-Id: Iabfd7900a934162a425008593ecc0f0b4d56476e
Mark Lobodzinski [Thu, 19 May 2016 23:01:48 +0000 (17:01 -0600)]
layers: GH7, Fix bad var names in swapchain layer
Change-Id: I46331c530654334abacbfb3ffd3656809f6b7d5d
Tobin Ehlis [Thu, 19 May 2016 17:08:34 +0000 (11:08 -0600)]
tests: GH535 Add tests for clear image errors
Add test that clears a depth/stencil image with CmdClearColorImage()
and one that clears color image with CmdClearDepthStencilImage()
Tobin Ehlis [Thu, 19 May 2016 16:10:09 +0000 (10:10 -0600)]
layers: Replace is_depth() in image layer with util function
vk_layer_utils has function vk_format_is_depth_or_stencil() that is
exactly the same as local is_depth() function so kill local function
and use utility function.
Tobin Ehlis [Thu, 19 May 2016 15:59:30 +0000 (09:59 -0600)]
layers: GH535 Add checks for Clear image errors
This adds two new checks to make sure that CmdClearColorImage is
not called with depth/stencil format image and that
CmdClearDepthStencilImage is not called with color format image.
Also add getImageState() helper function to image layer to
simplify/unify code for lookup of IMAGE_STATE from imageMap.