Chris Forbes [Fri, 22 Jan 2016 02:44:40 +0000 (15:44 +1300)]
layers: Only set up tracking for new descriptors if allocation succeeded.
It's possible for this call to fail -- the pool is exhausted, or the request was simply bogus. In these cases, the returned descriptor set handles are meaningless. Don't shove them in our hashtables.
Signed-off-by: Chris Forbes <chrisforbes@google.com>
Chris Forbes [Fri, 22 Jan 2016 02:28:30 +0000 (15:28 +1300)]
nulldrv: Set memory type mask for buffers.
Signed-off-by: Chris Forbes <chrisforbes@google.com>
Chris Forbes [Fri, 22 Jan 2016 02:23:45 +0000 (15:23 +1300)]
nulldrv: fill out physical device memory info
Previously we just left this filled with junk.
Signed-off-by: Chris Forbes <chrisforbes@google.com>
Tobin Ehlis [Thu, 21 Jan 2016 17:21:04 +0000 (10:21 -0700)]
layers: Fix draw_state validation of descriptor updates with images
Earlier fix was broken b/c we didn't have format of swapchain images.
This fix adds the format to imageLayoutMap IMAGE_NODE struct, which contains all images created via vkCreateImage() as well as all swapchain images fetched via vkGetSwapchainImagesKHR().
This required enhancing the SWAPCHAIN_NODE to include the createInfo. Since this has a dangling ptr for queueIndices, added a constructor and destructor to that struct to handle allocation and clean-up of that ptr.
Jon Ashburn [Fri, 22 Jan 2016 22:39:20 +0000 (15:39 -0700)]
misc: bump to header 1.0.2
Tobin Ehlis [Wed, 20 Jan 2016 23:23:37 +0000 (16:23 -0700)]
layers: MR153, Correctly track inFlight cmdBuffers per queue
There were per-queue vectors of the cmdBuffers in flight, but they were not
being consistently used/updated.
This change keeps two sets of inFlight cmdBuffers: one globally for all
cmdBuffers on the device, and one for each queue.
Ideally we could just track per-queue, but secondary command buffers are an
exception that's considered "in-flight" from the time they're recorded in a
primary command buffer with the vkCmdExecuteCommands() call so having a global
list provides a way to account for that.
Command buffers are added into both the global inFlight set and the individual
queue set at QueueSubmit time.
When cleaning up command buffers based on fences or Idle waits, correctly
remove the cmdBuffers from the appropriate queue inFlight set. Also, if the
cmdBuffer is not inFlight on any other queues, remove it from the the global
inFlight set.
Removed the deviceMap as it was only being used to hold a vector of queues.
Since layer_data struct is already per-device, just moved vector of queues
directly into layer_data struct.
Michael Lentine [Tue, 19 Jan 2016 20:00:53 +0000 (14:00 -0600)]
layers: MR150, Fix render pass graphics checks
Make sure that VK_SUBPASS_EXTERNAL is handled properly.
Tobin Ehlis [Fri, 15 Jan 2016 20:34:44 +0000 (13:34 -0700)]
layers: MR139, draw_state VK_COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT checks
Added a set to track which secondary cmdBuffers are contained within a primary cmdBuffer.
Added new DRAWSTATE_INVALID_CB_SIMULTANEOUS_USE enum value for new error/warning
cases, along with line in documentation.
New validation issues and state updates are listed below.
While tracking cmdBuffers at QueueSubmit time:
1. Flag an error if a cmdBuffer is already in flight and does not have
VK_COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT set
2. Account for tracking of secondary cmdBuffers (and their in_use resources)
that are submitted within a primary command buffer
When submitting secondary command buffers into primary command buffer at
CmdExecuteCommands time:
1. Flag an error if secondary cmdBuffer is in flight and doesn't have
VK_COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT set.
2. Warn user if secondary cmdBuffer doesn't have
VK_COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT set but primary cmdBuffer does.
This causes primary cmdBuffer to be treated as if
VK_COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT isn't set.
3. Add secondary cmdBuffers to set off of primary cmdBuffer for tracking purposes
4. Add secondary cmdBuffers to inFlight set
Tobin Ehlis [Thu, 14 Jan 2016 19:47:19 +0000 (12:47 -0700)]
layers: MR137, Flag error if set updated or freed while in use
It is illegal to free or update a descriptorSet that is in use.
Updated SET_NODE to inherit from BASE_NODE for in_use tracking.
At the time that Draws are recorded into the cmdBuffer, capture any active sets
for that cmdBuffer into std::set<VkDescriptorSet> activeSets.
At the time vkCmdBindDescriptorSets is recoreded in cmdBuffer, flag descriptor
sets as in use. At the time a set is freed, flag an error if set is in use.
GregF [Thu, 21 Jan 2016 00:14:31 +0000 (17:14 -0700)]
glslang: bump up glslang and spirv-tools versions for ISV release
GregF [Wed, 20 Jan 2016 23:37:18 +0000 (16:37 -0700)]
shader compiler: add new VertexIndex
Antoine Labour [Thu, 21 Jan 2016 00:32:17 +0000 (16:32 -0800)]
Make cJSON case-sensitive
Courtney Goeltzenleuchter [Tue, 19 Jan 2016 23:08:39 +0000 (16:08 -0700)]
debug_report: Integrate review feedback
Conflicts:
include/vulkan/vk_ext_debug_report.h
Conflicts:
include/vulkan/vk_ext_debug_report.h
Jon Ashburn [Wed, 20 Jan 2016 15:52:40 +0000 (08:52 -0700)]
layers: Fix screenshot to intercept CreateInstance so it canbe on instance chain
Jon Ashburn [Wed, 20 Jan 2016 15:08:25 +0000 (08:08 -0700)]
vktrace: Get partially working again with the new loader/layer interface
Jon Ashburn [Wed, 20 Jan 2016 15:07:14 +0000 (08:07 -0700)]
layers: Remove obsolete VkbaseLayerObject
Courtney Goeltzenleuchter [Thu, 14 Jan 2016 23:06:06 +0000 (16:06 -0700)]
loader: remove resolved TODOs
Courtney Goeltzenleuchter [Thu, 14 Jan 2016 23:34:30 +0000 (16:34 -0700)]
loader: Remove CreateInstance and CreateDevice
The new init mechanism always uses GetInstanceProcAddr
to query the next layer's CreateInstance or CreateDevice
function. Thus no reason to cache those function pointers
in the instance dispatch table.
Courtney Goeltzenleuchter [Fri, 15 Jan 2016 21:15:24 +0000 (14:15 -0700)]
loader: Use ICD's GetInstanceProcAddr
Appears there is some difference in behavior between
vkCreateDevice addr that we get initially vs. one
later. Not sure what difference is yet.
-------------------------------
Courtney Goeltzenleuchter [Fri, 15 Jan 2016 21:15:00 +0000 (14:15 -0700)]
loader: Add util to strip loader extensions
Courtney Goeltzenleuchter [Fri, 8 Jan 2016 19:18:43 +0000 (12:18 -0700)]
loader: implement new layer init method
New layer init method requires the construction of
Link information for CreateInstance and CreateDevice
that is accessible to layers via the CreateInfo.pNext pointer.
The layer can then use the Get*ProcAddr from the Link
structure to initialize their dispatch table if the
call down the chain returns successfully.
This removes the need to do special initialization work
at Get*ProcAddr time.
Layer Get*ProcAddr now return their internal function
pointers regardless of the value of instance or device.
Only need to have valid instance & device when looking
up extensions or when passing the request down the chain.
This mechanism allows us to remove object wrapping used
by the loader previously. Also simplifies the dispatch table
setup.
Conflicts:
layers/device_limits.cpp
layers/draw_state.cpp
loader/loader.c
loader/trampoline.c
Courtney Goeltzenleuchter [Fri, 15 Jan 2016 18:58:33 +0000 (11:58 -0700)]
layers: fix threading destroy instance
The threading layer was using the generic destroy_instance
utility when it should be using the utility that takes
a map.
Courtney Goeltzenleuchter [Fri, 8 Jan 2016 18:52:37 +0000 (11:52 -0700)]
layers: Add utility functions for new layer init
These utilities will find the appropriate CreateInfo
extension that defines the layer link information.
Courtney Goeltzenleuchter [Fri, 8 Jan 2016 18:50:04 +0000 (11:50 -0700)]
layers: Update layer info to match json
Courtney Goeltzenleuchter [Fri, 8 Jan 2016 18:40:27 +0000 (11:40 -0700)]
loader: Add structures to support new init method
These structures will be used to extend CreateInstance
and CreateDevice to support layers. The loader will
create a chain of these structures - one per layer -
that tells the layer the Get*ProcAddr for the next
lower part.
Courtney Goeltzenleuchter [Fri, 8 Jan 2016 18:39:32 +0000 (11:39 -0700)]
icd: Remove unused reference to vk_sdk_platform.h
Antoine Labour [Tue, 27 Oct 2015 19:21:09 +0000 (12:21 -0700)]
vkjson: initial commit
Tobin Ehlis [Wed, 20 Jan 2016 16:01:24 +0000 (09:01 -0700)]
layers: MR148/GL82, Don't memset PIPELINE_NODE in draw_state
Remove memset of PIPELINE_NODE from Compute Pipeline creation.
Default constructor handles initialization so no need to memset and this was
causing a crash due to corrupting the active_sets std::set.
Tobin Ehlis [Wed, 20 Jan 2016 17:25:29 +0000 (10:25 -0700)]
layers: MR149, Cleanup CMD_NODE use in draw_state
Move pCmds vector<CMD_NODE*> to be cmds vector<CMD_NODE> instead. This simplifies
cleanup of the data structure as we don't have to manage the ptr new/delete lifecycle.
David Pinedo [Wed, 20 Jan 2016 04:19:11 +0000 (21:19 -0700)]
WindowsRTInst: Layer registry values are created/removed correctly on Windows7
Mark Lobodzinski [Tue, 19 Jan 2016 23:27:27 +0000 (16:27 -0700)]
layers: GL84, Reset vkQueuePresentKHR semaphore state in mem_tracker
Mark Lobodzinski [Tue, 19 Jan 2016 23:08:36 +0000 (16:08 -0700)]
layers: GL92, Properly remove cmd buf metadata
When FreeCommandBuffers was called the helper routine was not
properly removing the command buffer tracking data.
Tobin Ehlis [Tue, 19 Jan 2016 20:12:52 +0000 (13:12 -0700)]
layers: MR145/GL67, Correctly mirror command buffer inheritance info
Embedded InheritanceInfo struct within command buffer BeginInfo was not correctly
mirrored in draw_state. Correctly copy this data as appropriate and correctly
clear it when command buffer is reset.
Conflicts:
layers/draw_state.cpp
Michael Lentine [Tue, 19 Jan 2016 20:19:38 +0000 (14:19 -0600)]
layers: MR144, Fix layer names
Tobin Ehlis [Tue, 19 Jan 2016 19:03:34 +0000 (12:03 -0700)]
layers: MR143/GL85, Fix draw_state implicit command buffer reset
On vkBeginCommandBuffer an implicit reset occurred late and would overwrite the
beginInfo. Moved implicit reset earlier so that beginInfo is maintained
regardless of whether or not implicit reset is triggered.
Also removed some dead code from resetCB().
Courtney Goeltzenleuchter [Tue, 19 Jan 2016 00:42:08 +0000 (17:42 -0700)]
debug_report: MR141, Change pUserData to match type used elsewhere
Other uses of pUserData in Vulkan do not have a const qualifier,
remove it for this pUserData.
Tobin Ehlis [Tue, 19 Jan 2016 15:36:40 +0000 (08:36 -0700)]
layers: MR142/GL89, draw_state: check swapchain images during descriptor updates
When vkUpdateDescriptorSets() is called, if an imageView was being updated, we
were not including swapchain images in the check to verify a valid image.
Adding these to the check to avoid false positives.
Mark Lobodzinski [Tue, 19 Jan 2016 16:57:24 +0000 (09:57 -0700)]
layers: Fix object_trackers dereferencing of invalid pointers
vkUpdateDescriptorSets->VkWriteDescriptorSet: object_tracker should only validate
array specified by VkDescriptorType.
Karl Schultz [Tue, 19 Jan 2016 16:56:56 +0000 (09:56 -0700)]
layers: Fix problems with screenshot to get it working again
- Set the layerCount member of VkImageSubresourceLayers
- Add image transition memory barriers (needed for some drivers)
- Add dispatch table to command buffer object created by this layer.
This lets it get dispatched by a downstream layer, if present.
Chris Forbes [Sun, 17 Jan 2016 23:07:01 +0000 (12:07 +1300)]
layers: MR140, Add get_type_def helper in DrawState
Chris Forbes [Sun, 17 Jan 2016 19:56:40 +0000 (08:56 +1300)]
layers: MR140, Add SPIRV instruction stream iterator helper
Chris Forbes [Sun, 17 Jan 2016 19:56:09 +0000 (08:56 +1300)]
layers: MR140, Pass whole shader_module to build_type_def_index
Chris Forbes [Sun, 17 Jan 2016 19:36:20 +0000 (08:36 +1300)]
layers: MR140, Remove some commented merge remnants
Mark Lobodzinski [Wed, 13 Jan 2016 17:23:15 +0000 (10:23 -0700)]
layers: LX257, Validate Uniform/Storage buffer offset alignments
Jon Ashburn [Mon, 18 Jan 2016 19:20:03 +0000 (12:20 -0700)]
loader: Return the loader created instance rather than from the instance chain
Fix's issue with layers that wrap instance.
Mark Young [Fri, 15 Jan 2016 16:01:11 +0000 (09:01 -0700)]
installer: Fix LunarXchange issue #287.
Apply David's fix to force the registry to be created.
Jon Ashburn [Fri, 15 Jan 2016 20:34:22 +0000 (13:34 -0700)]
layers: Fix json file for multi layer
Jon Ashburn [Fri, 15 Jan 2016 20:10:10 +0000 (13:10 -0700)]
laoder: Fix phys_dev to use unwrapped version in loader_CreateDevice
Chris Forbes [Fri, 15 Jan 2016 01:53:11 +0000 (14:53 +1300)]
layers: Add minimal actual analysis of interface blocks to DrawState
There's definitely still room for improvement here (SPIRV-Tools might have some stuff that will make some of these more complex module walks a little clearer); however, this adds enough support for interface blocks for us to generate all the same kinds of mismatch errors we were previously generating for loose inputs and outputs.
Signed-off-by: Chris Forbes <chrisforbes@google.com>
Chris Forbes [Thu, 14 Jan 2016 22:32:03 +0000 (11:32 +1300)]
layers: Fix mishandling of VI vs VS validation (Gitlab#69)
This wasn't quite correct. We'd end up trying to run it_a off beyond attribs.end(),
which is invalid and upsets the MS debug stdlib. This is most likely the root cause
of the weirdness that caused people to add _at_end, _first, etc to this function long ago,
so that can all disappear -- but for now, let's just deal with the actual bug.
Signed-off-by: Chris Forbes <chrisforbes@google.com>
Chris Forbes [Tue, 29 Dec 2015 21:52:16 +0000 (10:52 +1300)]
nulldrv: Initialize image format properties
Previously this was just left uninitialized. Image layer would then randomly fail image creation based on comparisons against junk.
Signed-off-by: Chris Forbes <chrisforbes@google.com>
Chris Forbes [Tue, 29 Dec 2015 21:51:01 +0000 (10:51 +1300)]
nulldrv: Add more proper support for ShaderModule objects
Again not OK to claim success but return junk rather than a proper handle. Fixes various layers exploding when running against nulldrv.
Signed-off-by: Chris Forbes <chrisforbes@google.com>
Chris Forbes [Tue, 29 Dec 2015 21:49:29 +0000 (10:49 +1300)]
nulldrv: Add minimal support for pipeline cache objects.
It's not really OK to claim success but leave junk in the caller's memory rather than a real handle. This prevents object tracker randomly exploding when running against the null driver.
Signed-off-by: Chris Forbes <chrisforbes@google.com>
Chris Forbes [Tue, 29 Dec 2015 21:48:06 +0000 (10:48 +1300)]
nulldrv: Claim that our supported image formats can be used as color attachments
Previously if an app would be unable to find any color renderable format, so only
an app that didn't bother (and wasn't running under validation) would get anywhere.
Signed-off-by: Chris Forbes <chrisforbes@google.com>
Chris Forbes [Tue, 29 Dec 2015 21:47:26 +0000 (10:47 +1300)]
nulldrv: Expose some present modes
Signed-off-by: Chris Forbes <chrisforbes@google.com>
Chris Forbes [Tue, 29 Dec 2015 21:45:47 +0000 (10:45 +1300)]
nulldrv: Expose some basic formats as presentable
Previously we just left whatever junk the caller had in this memory, which generally crashed a caller.
Signed-off-by: Chris Forbes <chrisforbes@google.com>
Chris Forbes [Tue, 29 Dec 2015 21:44:58 +0000 (10:44 +1300)]
nulldrv: Claim to support any WSI surface.
Previously this just left whatever junk the caller had, with unpredictable results.
Signed-off-by: Chris Forbes <chrisforbes@google.com>
Chris Forbes [Tue, 29 Dec 2015 21:43:16 +0000 (10:43 +1300)]
nulldrv: Initialize memory types mask
Previously apps would randomly succeed or fail to find a matching memory type based on whatever junk happened to be here. Instead, claim to support all memory types.
Signed-off-by: Chris Forbes <chrisforbes@google.com>
Jon Ashburn [Thu, 14 Jan 2016 22:11:55 +0000 (15:11 -0700)]
layers: gitlab #62, object_tracker allows NULL semaphore in AcquireNextImage
GregF [Wed, 13 Jan 2016 21:25:26 +0000 (14:25 -0700)]
spirv-tools: update version due to build problems seen by norbert
Jon Ashburn [Thu, 14 Jan 2016 20:51:55 +0000 (13:51 -0700)]
loader: Fix bad memory ref and CreateInstance fail don't write ouptut
Gitlab #58
CreateInstance shouldn't update output parameter on failure.
Tony Barbour [Thu, 14 Jan 2016 17:40:40 +0000 (10:40 -0700)]
Change api_version to 1.0.1 in json files
From 0.210.0
Mark Lobodzinski [Thu, 14 Jan 2016 17:15:37 +0000 (10:15 -0700)]
layers: Gitlab #71, Fix copy/paste error in mem_tracker
Tobin Ehlis [Thu, 14 Jan 2016 16:35:02 +0000 (09:35 -0700)]
nulldrv: MR131, Update api_version in nulldrv json file
Chris Forbes [Thu, 14 Jan 2016 02:57:46 +0000 (15:57 +1300)]
layers: MR130, Handle VK_WHOLE_SIZE properly in mem_tracker:initializeAndTrackMemory
VK_WHOLE_SIZE is ~0ull. If this were passed as `size`, we'd try to allocate ~1ull
bytes, and then memset them all to 0xb. This tends to explode.
Tobin Ehlis [Wed, 13 Jan 2016 21:45:14 +0000 (14:45 -0700)]
layers: MR129, Remove incorrect asserts from param_checker and object_tracker
For apps that run with multiple instances, it's perfectly valid to have instances
remaining at DestroyInstace() time so removing that assert from param_checker.
Also, the assert appears to have been cut-and-pasted into DestroyDevice of both
param_checker and object_tracker. The same logic applies for apps that use
multiple devices. Running vulkancts with layers enabled found these issues.
Jon Ashburn [Wed, 13 Jan 2016 19:51:43 +0000 (12:51 -0700)]
loader: Add support for implicit layer device extensions enumeration
Partial fix for Bugzilla #15367. Need to do similar things for instance
extensions.
Conflicts:
loader/loader.c
Jon Ashburn [Tue, 12 Jan 2016 16:55:14 +0000 (09:55 -0700)]
loader: Fix so unwrapped instance gets used for layer instance extension dispatch
Conflicts:
loader/trampoline.c
David Pinedo [Wed, 13 Jan 2016 23:22:19 +0000 (16:22 -0700)]
Windows RT Installer: Fix layer reg entry setup, no layers we being installed
Jon Ashburn [Wed, 13 Jan 2016 19:55:12 +0000 (12:55 -0700)]
demos: Remove the message box dialog for errors in vulkaninfo
Mark Lobodzinski [Wed, 13 Jan 2016 17:36:44 +0000 (10:36 -0700)]
demos: Fix vulkaninfo version reporting error
David Pinedo [Tue, 12 Jan 2016 23:14:53 +0000 (16:14 -0700)]
Windows RT Installer: add buildno to version
Chris Forbes [Tue, 12 Jan 2016 20:29:31 +0000 (09:29 +1300)]
layers: MR128, Don't complain about declarations without Builtin or Location
This is a stopgap until we have proper interface block analysis landed.
For now, this just suppresses the false positives. A correct SPIRV
module will not hit this path for anything other than interface blocks.
Conflicts:
layers/draw_state.cpp
Chris Forbes [Thu, 17 Dec 2015 04:10:19 +0000 (17:10 +1300)]
layers: MR128, Fix mismatched new[]/delete in validate_pipeline_shaders
In draw_state layer.
Chris Forbes [Thu, 17 Dec 2015 04:07:15 +0000 (17:07 +1300)]
layers: MR128, Revert "layers: Work around Windows release build crash in cube"
This reverts commit
470d0226d222ac1532a88e5c5f0b78b7a391f7ce.
Conflicts:
layers/draw_state.cpp
Mark Lobodzinski [Tue, 12 Jan 2016 20:18:44 +0000 (13:18 -0700)]
layers: LX273, Fix accessMask validation for depth/stencil input attachments
When using an imageView of a depth/stencil image to populate a descriptor set,
the aspectMask must only include one bit and selects whether the imageView is
used for depth reads or stencil reads.
GregF [Tue, 12 Jan 2016 19:57:45 +0000 (12:57 -0700)]
spirv-tools: update version for SDK 1.0 IHV
Jon Ashburn [Tue, 12 Jan 2016 18:33:33 +0000 (11:33 -0700)]
header: move to version 1.0.1
Jon Ashburn [Tue, 12 Jan 2016 16:55:14 +0000 (09:55 -0700)]
loader: Fix so unwrapped instance gets used for layer instance extension dispatch
Tony Barbour [Tue, 12 Jan 2016 18:16:52 +0000 (11:16 -0700)]
layers: Remove extra subpass increment in draw state
Jeremy Hayes [Tue, 12 Jan 2016 16:30:00 +0000 (09:30 -0700)]
loader: update linux version to 1.
Mark Lobodzinski [Mon, 11 Jan 2016 16:46:09 +0000 (09:46 -0700)]
layers: Gitlab 65, Add image layout extension enum to paramchecker validation
Mark Lobodzinski [Mon, 11 Jan 2016 23:50:30 +0000 (16:50 -0700)]
layers: Fix image layer format mutability validation
Tobin Ehlis [Mon, 11 Jan 2016 20:18:40 +0000 (13:18 -0700)]
layers: MR127, Update DrawState handling of non-updated descriptors
At CmdBindDescriptorSets() time, only warn on non-updated descriptor if that descriptor is not empty.
At draw time, if a descriptor is being used and it has not been updated, trigger an error.
Jon Ashburn [Mon, 11 Jan 2016 21:21:31 +0000 (14:21 -0700)]
loader: Update README.md for ICD<->loader interface
Jon Ashburn [Mon, 11 Jan 2016 21:41:35 +0000 (14:41 -0700)]
loader: Fix old ICD interface to not use vkGetInstanceProcAddr(NULL,)
GregF [Mon, 11 Jan 2016 21:03:24 +0000 (14:03 -0700)]
glslang: upgrade glslang version for SDK 1.0 IHV
Jon Ashburn [Mon, 11 Jan 2016 20:24:16 +0000 (13:24 -0700)]
header: Move to version 1.0.0 from 0.222
Whitespace only change.
Jon Ashburn [Mon, 11 Jan 2016 20:12:43 +0000 (13:12 -0700)]
misc: Move to Vulkan header version 0.222
Norbert Nopper [Mon, 11 Jan 2016 07:55:57 +0000 (08:55 +0100)]
layers: Gitlab 126, Fix for swapchain layer which was checking wrong pointer
Mark Lobodzinski [Fri, 8 Jan 2016 18:07:56 +0000 (11:07 -0700)]
layers: LX264, Validate immutable format bit in image layer
Mark Young [Fri, 8 Jan 2016 00:16:39 +0000 (17:16 -0700)]
Fixes: Fixed compiler warning about &
Someone checked in a bitwise & instead of a boolean comparison &&.
Mark Young [Thu, 7 Jan 2016 22:41:43 +0000 (15:41 -0700)]
Fixes: More compilation warning fixes
This fixes the main issues with VkBool32 versus bool.
Mark Lobodzinski [Fri, 8 Jan 2016 21:52:49 +0000 (14:52 -0700)]
layers: Gitlab 41 & 61, Fix invalid descriptor dereferences in helper codegen
Descriptor type arrays should only be dereferenced depending on the specified
descriptorType parameter. Caused crashes in api_dump.
Norbert Nopper [Fri, 8 Jan 2016 17:35:19 +0000 (18:35 +0100)]
layers: MR124, Fix semaphore ordering validation in mem tracker layer
Mark Lobodzinski [Fri, 8 Jan 2016 00:26:05 +0000 (17:26 -0700)]
layers: LX263, Validate minimum imageArrayLayers value in swapchain layer
Jon Ashburn [Thu, 7 Jan 2016 23:13:06 +0000 (16:13 -0700)]
layers: Fix unique_object gpa function; no intercept of func without an
NDO
Also fix bug in list of KHR functions for table.
Mark Lobodzinski [Tue, 5 Jan 2016 23:38:09 +0000 (16:38 -0700)]
layers: LX256, Suppress warnings on pre-signaled fences in MemTracker
Jon Ashburn [Thu, 7 Jan 2016 22:21:14 +0000 (15:21 -0700)]
misc: make sure host memory alignment is a power of two
Use sizeof(int) as a default generally. Is that reasonable?
Tobin Ehlis [Tue, 5 Jan 2016 17:33:58 +0000 (10:33 -0700)]
layers: MR123, Improved ObjectTracker codegen
Updated ObjectTracker to correctly generate the required permutations of validate_<object>()
functions. This removed some hand-coded functions from the header. Updated the codegen for
ObjectTracker to use improved dict from UniqueObjects that eliminates repeated "if" and
"for" blocks. Also updated valid null object checking to limit valid null object cases
to appropriate API calls.