Mark Lobodzinski [Mon, 22 Aug 2016 17:34:50 +0000 (11:34 -0600)]
layers: Update layer details doc for new tests
Change-Id: I9a0cca05f387c291494edf6970e0dd34d5922fe6
Mark Lobodzinski [Mon, 22 Aug 2016 15:21:03 +0000 (09:21 -0600)]
layers: Add Image Transfer Granularity checking
CmdCopyImage and CmdCopyImageToBuffer/CmdCopyBufferToImage have
parameters that must respect the Image Transfer Granularity
requirements set in queue family property minImageTransferGranularity.
Change-Id: Ic0fed33c201310bafe86f6f509a63b675de1d572
Mark Lobodzinski [Fri, 19 Aug 2016 17:03:01 +0000 (11:03 -0600)]
layers: Update layer validation details doc
Updated entry for new BufferImageCopy checks.
Change-Id: I85ea2eeacae6885fbd6729180167cbe1abe4c176
Mark Lobodzinski [Fri, 19 Aug 2016 14:50:15 +0000 (08:50 -0600)]
layers: GH763, Add validation for VkBufferImageCopy
Added valid usage checks for members of this structure used in
vkCmdCopyImageToBuffer and vkCmdCopyBufferToImage.
Change-Id: I62ec7b04504e91fa33c86d1a5b606ba8fb7a294a
Tony Barbour [Mon, 22 Aug 2016 22:10:02 +0000 (16:10 -0600)]
layers: Leave INDEX_BUFFER_BOUND set in set_cb_pso_status
Change-Id: I5ca986c95b97cdf97a0f65b0c34db32d91428645
Chris Forbes [Mon, 22 Aug 2016 04:53:12 +0000 (16:53 +1200)]
docs: Add description of new SC cases
Signed-off-by: Chris Forbes <chrisforbes@google.com>
Chris Forbes [Mon, 22 Aug 2016 04:36:54 +0000 (16:36 +1200)]
layers: Allow get_fundamental_type to look through OpTypeImage
Signed-off-by: Chris Forbes <chrisforbes@google.com>
Chris Forbes [Mon, 22 Aug 2016 04:11:22 +0000 (16:11 +1200)]
layers: Validate fundamental type for input attachments
Signed-off-by: Chris Forbes <chrisforbes@google.com>
Chris Forbes [Mon, 22 Aug 2016 03:31:18 +0000 (15:31 +1200)]
layers: Correctly handle input attachment collection w/ arrays
Fixes the test added in the previous commit
Signed-off-by: Chris Forbes <chrisforbes@google.com>
Chris Forbes [Mon, 22 Aug 2016 03:20:11 +0000 (15:20 +1200)]
layers: Require every input attachment used by FS to be present.
Signed-off-by: Chris Forbes <chrisforbes@google.com>
Chris Forbes [Mon, 22 Aug 2016 02:58:35 +0000 (14:58 +1200)]
layers: Add helper to collect shader's use of input attachments
Signed-off-by: Chris Forbes <chrisforbes@google.com>
Tobin Ehlis [Mon, 22 Aug 2016 14:12:23 +0000 (08:12 -0600)]
layers: Fix spelling dynami->dynamic
Mark Young [Fri, 19 Aug 2016 21:25:08 +0000 (15:25 -0600)]
loader: Fix CTS failures in simulate_oom tests.
The simulate_oom tests continue the trend of testing what happens
when the user-provided allocators fail. It validates two things:
1) That the loader returns the proper error message when this
occurs.
2) That the loader cleans up any allocated items prior to
returning.
Change-Id: Ic80ff4345e1f3524d5e11ce787b10c391a37d760
David Hubbard [Fri, 19 Aug 2016 19:30:06 +0000 (13:30 -0600)]
adding vulkan.py extension.ifdef field to vulkan.py
Some extensions are disabled at compile time and must not be included
in generated code. Issue #72 gh72. This adds a new optional field
ifdef which contains the #define symbol to insert as a guard around
generated code.
Change-Id: I30b521dd1ff77d0db1608cb11c8c999cef40dff2
Nanley Chery [Tue, 12 Jul 2016 18:22:38 +0000 (11:22 -0700)]
layers: Fix spelling error in README
Change-Id: I2e6aa600f30d89d22ce5f6f1c2e84555ba8e0b71
Mark Lobodzinski [Mon, 15 Aug 2016 20:27:26 +0000 (14:27 -0600)]
layers: GH820, MapMemory shadow copy alignment
For host-visible non-coherent memory, the validation layers use a
shadow copy of the mapped memory region. Added proper alignment
for the shadow copy, fixed handling of offsets, and implemented
resolve of the shadow data on invalidate calls.
Change-Id: I88815799865d3a30c76e16cf96ace630e1bbcf2d
Tobin Ehlis [Thu, 18 Aug 2016 16:53:58 +0000 (10:53 -0600)]
layers: GH859 Fix error messages for viewport/scissors state
The checks are correct but error messages were backwards and stated
"contains" instead of "does not contain".
Mark Lobodzinski [Thu, 18 Aug 2016 14:50:16 +0000 (08:50 -0600)]
demos: Clean up vulkaninfo source formatting
A few spots where clang-format is disabled need some cleanup.
Change-Id: I1adc64d479244fc5f655b3e3e7cd74d64499f682
Mark Lobodzinski [Tue, 16 Aug 2016 15:06:15 +0000 (09:06 -0600)]
layers: VT59, Change query count errors to warnings
In patterns where an API call is normally made twice, the first with
a NULL pointer returning the count of structures to receive followed
by second call with a pointer to the appropriately-sized buffer, the
swapchain layer was returning validation errors if the size call was
made. However, this is legal behavior so these now return validation
warnings. Also updated the relevant validation tests.
Change-Id: I9f493b27bf4fa0bec6385499c76c5cece1ad86b9
Chris Forbes [Mon, 1 Aug 2016 03:15:30 +0000 (15:15 +1200)]
layers: Rework work tracking
This fixes cross-queue work tracking, while keeping everything else
working.
Signed-off-by: Chris Forbes <chrisforbes@google.com>
Mark Lobodzinski [Tue, 16 Aug 2016 15:06:15 +0000 (09:06 -0600)]
layers: GH819, Fix non-coherent memory shadow copy
InvalidateMappedMemoryRanges was not updating core validation's
shadow copy of non-coherent memory.
Change-Id: I7b5e05791405871489014d6b08595c9bae941185
Mark Lobodzinski [Mon, 15 Aug 2016 21:00:12 +0000 (15:00 -0600)]
layers: GH822, handle WHOLE_SIZE for mapped memory
A support routine for FlushMappedMemoryRanges and InvalidateMapped-
MemoryRanges ignored VK_WHOLE_SIZE, causing invalid memory accesses.
Change-Id: I28616faa1339a394a3462e72780efd1b852ac489
Lenny Komow [Wed, 17 Aug 2016 20:50:13 +0000 (14:50 -0600)]
winsdk: Create layer registry if it doesn't exist
Mark Mueller [Tue, 16 Aug 2016 19:51:38 +0000 (13:51 -0600)]
docs: GH424 Update validation test documentation
Doc changes to reflect test additions
Change-Id: I18488615b2323dc38505e6a2df18fd960ea56bf4
Mark Mueller [Tue, 16 Aug 2016 15:47:31 +0000 (09:47 -0600)]
layers: GH424 add check of skip_call results to CreateDevice
skip_call result was ignored allowing for exception violations
under some test conditions.
Change-Id: Ied673a9b932210de52ed189c67221af60415cae9
Mark Lobodzinski [Tue, 16 Aug 2016 17:51:12 +0000 (11:51 -0600)]
layers: LX581, Warn for null-region blits
Parameters specifying the extents for VkCmdBlitImage are often
misinterpreted from the spec. Add warningis if the extents do not
specify a positively-sized area.
Change-Id: I11324dcf4523b094d7545f406d5f87a1145e0563
Mark Lobodzinski [Mon, 8 Aug 2016 20:41:55 +0000 (14:41 -0600)]
layers: Run swapchain source through clang-format
Change-Id: Iaebe81e34e76d4760d1097da23d52d7ca2ef4273
Mark Lobodzinski [Mon, 8 Aug 2016 20:36:58 +0000 (14:36 -0600)]
layers: Some simple style tweaks for swapchain
Fixed some variable names and removed c-style casts.
Change-Id: I994ca311665a59d0f81ce0cfdeda4a66deb632be
Mark Lobodzinski [Mon, 8 Aug 2016 17:23:58 +0000 (11:23 -0600)]
layers: Removed swapchain pNext validation
This validation is already performed in parameter_validation.
Change-Id: I5fd8e92c885300aa35537d825ea67fabb723062e
Mark Lobodzinski [Mon, 8 Aug 2016 17:20:36 +0000 (11:20 -0600)]
layers: Fixed swapchain layer warning messages
Macro used incorrect parameter layout -- removed and in-lined log_msg
calls.
Change-Id: I2a21be76f83eed9fb3055f6f57f22204c9ea76f0
Mark Lobodzinski [Mon, 8 Aug 2016 17:14:52 +0000 (11:14 -0600)]
layers: Removed unused macro in swapchain
LOG_PERF_WARNING was not used.
Change-Id: I89f84611b37a809493e3d23c53809263d48b3065
Mark Lobodzinski [Mon, 8 Aug 2016 17:09:27 +0000 (11:09 -0600)]
layers: Moved swapchain QFI checks into function
Correct object pointers passed now.
Change-Id: Ib18e1849da2761373386eb44c2549be7c28752ab
Mark Lobodzinski [Mon, 8 Aug 2016 16:41:18 +0000 (10:41 -0600)]
layers: Removed swapchain ZERO_VALUE check
This validation is already performed in parameter_validation.
Change-Id: I3c1a7f17d68fa81f7770b7dd88cb075be8e59175
Mark Lobodzinski [Mon, 8 Aug 2016 16:34:56 +0000 (10:34 -0600)]
layers: Remove swapchain WRONG_STYPE checks
This validation is already performed in parameter_validation.
Change-Id: I0b9e83cf241bfa5de93c90898f6cd5b6d9b745b5
Mark Lobodzinski [Mon, 8 Aug 2016 16:29:34 +0000 (10:29 -0600)]
layers: In-line swapchain zero_prior_count macro
Change-Id: Ib9c58f05ef045f0450f1ba62dfc7ea4498ac119e
Mark Lobodzinski [Mon, 8 Aug 2016 16:18:49 +0000 (10:18 -0600)]
layers: Remove swapchain INVALID_COUNT macro
Change-Id: I44d19882af69541cfe9876a22fecc0a09056ba0b
Mark Lobodzinski [Mon, 8 Aug 2016 15:57:09 +0000 (09:57 -0600)]
layers: Remove swapchain NULL_POINTER checks
These are all overed in parameter_validation.
Change-Id: I23a7fc281414b6b8bcf30c5a9660560f2b51177f
Mark Lobodzinski [Mon, 8 Aug 2016 15:43:22 +0000 (09:43 -0600)]
layers: Removed LOG_ERROR_NON_VALID_OBJ macro
Change-Id: I0609694a3743ca764bcda6de66c0431fb63c1ad1
Mark Lobodzinski [Mon, 8 Aug 2016 15:38:42 +0000 (09:38 -0600)]
layers: Replace swapchain LOG_ERROR macros
Fixed some missing return codes, incorrect parameter order, bad object
handles, and instance-device mismatches. Inlined log-error calls.
Change-Id: I6d272cafcd8554f068896312a2b0f41a42d108be
Mark Lobodzinski [Tue, 16 Aug 2016 14:03:31 +0000 (08:03 -0600)]
layers: Fix typo in layer validation details doc
DynamicBlendConstantsNotBound was misspelled.
Change-Id: I33f4d53e336dc39b5f23583ee24df88441a339ac
Mark Lobodzinski [Wed, 10 Aug 2016 21:12:32 +0000 (15:12 -0600)]
layers: Update details document for new PV test
Added test to use a non-solid fillmode when this feature is disabled.
Change-Id: If43d8d2f30fa892b96cb90585eb0513649c535f7
Mark Lobodzinski [Tue, 9 Aug 2016 19:10:51 +0000 (13:10 -0600)]
layers: GH785, Validate rasterinfo->polygonMode
If fillModeNonSolid is not enabled, polygonMode cannot be set to
POINT or LINE.
Change-Id: I6cfdfac8f5c9ff7d27b94bf0aa80ae1249b0ce25
Mark Lobodzinski [Mon, 15 Aug 2016 22:22:50 +0000 (16:22 -0600)]
layers: Fix missing PV WSI registration
Change-Id: I1c924977a420bc7a417710b82f0a42f4ae5dd4c3
Lenny Komow [Mon, 15 Aug 2016 20:41:26 +0000 (14:41 -0600)]
winsdk: Move uninstall log to temp
Tobin Ehlis [Fri, 12 Aug 2016 20:26:31 +0000 (14:26 -0600)]
layers: Style fixup, don't use pass-by-reference params
Change pass-by-reference to a ptr to comply with Google style guide.
This way it's more clear that function is modifying param, especially when calling.
Tobin Ehlis [Fri, 12 Aug 2016 20:12:44 +0000 (14:12 -0600)]
layers: Naming corrections
Some minor fix-ups to variable names and comments for memory aliasing code.
Tobin Ehlis [Thu, 11 Aug 2016 01:11:54 +0000 (19:11 -0600)]
layers: Refactor set/validate memory valid functions
Create custom image and buffer versions of functions to minimize casting.
Tobin Ehlis [Thu, 11 Aug 2016 00:01:27 +0000 (18:01 -0600)]
layers: Push some casts into helper functions
Tobin Ehlis [Wed, 10 Aug 2016 23:00:51 +0000 (17:00 -0600)]
layers: Handle memory mapped prior to object binding
This adds initial support for memory that is updated via a MapMemory() call
prior to an object being bound. Initially any mapped allocation will just have
global_valid set for whole allocation. This value is then picked up by any
ranges made off of that allocation.
Really, we need to create new mapped regions and mark them valid, then make
sure that any overlapped objects pick up valid from mapped regions. This
requires more thought and design, though, so commiting this changes as a
simpler and incomplete initial fix.
Tobin Ehlis [Wed, 10 Aug 2016 22:08:00 +0000 (16:08 -0600)]
layers : Update memory valid to be per-range
We previously only tracked a single valid bool for an entire allocation.
That can easily get out of synch when multiple objects are bound to the
same allocation. This update moves the valid tracking to be per-range so
that it can be tracked on a per-object basis.
This does handle aliasing cases where various objects completely alias each
other, but there are still various aliased resource cases that aren't handled.
Tobin Ehlis [Wed, 10 Aug 2016 15:55:59 +0000 (09:55 -0600)]
layers: Refactor InsertMemoryRange
Work with local MEMORY_RANGE struct and insert to map at the end.
This avoids a loop pass and the awkward loop check of a range against itself.
Adds the slight complexity of storing aliases during loop and updating them
after the loop, but I prefer that to the alternative.
Tobin Ehlis [Mon, 8 Aug 2016 18:33:11 +0000 (12:33 -0600)]
layers: Update bound memory tracking and alias checking
Store all ranges bound to a single memory allocation in a single map indexed by object id.
Add two separate unordered_sets for independent image and vector processing.
Added a set of aliases to MEMORY_RANGE struct to hold any aliased ranges.
Insert aliased ranges at create time and remove the aliases when a range
is destroyed.
Have a single function, rangesInterset, to track if regions bound to a memory
allocation overlap, and if linear/non-linear overlap in violation of the spec.
Rene Lindsay [Fri, 12 Aug 2016 23:56:09 +0000 (17:56 -0600)]
demos : SAM6 Flip projection matrix, instead of vertex-shader
Change-Id: I0000000000decaf15bad0000000000000000006b
Lenny Komow [Fri, 12 Aug 2016 19:26:20 +0000 (13:26 -0600)]
winsdk: Clean up confiure_runtime.c and docs
Lenny Komow [Wed, 10 Aug 2016 16:31:07 +0000 (10:31 -0600)]
winsdk: Make RT installer use C program
Lenny Komow [Tue, 9 Aug 2016 21:56:15 +0000 (15:56 -0600)]
winsdk: Add C program for runtime configuration
Tony Barbour [Wed, 10 Aug 2016 16:32:42 +0000 (10:32 -0600)]
docs: Add renderpass tests from GH427
Change-Id: I3804836836af714fd9ba3138518d5c78832fc4d5
Mark Young [Thu, 11 Aug 2016 14:46:55 +0000 (08:46 -0600)]
spirv-headers : Add file to restrict to commit
Restrict spirv-headers to a specific commit (just as we do to
spirv-tools and glslang) by creating a new file
(spirv-headers_revision) to track the commit we want to
syncrhonize to. Also update the update_external_sources scripts
to use it. This will make sure that we don't run into the
scenario where spirv-tools and spirv-headers are incompatible.
Change-Id: Ia4fdd921a5c1c500d7f751db08b6998b3d704f2d
Mark Lobodzinski [Thu, 11 Aug 2016 19:25:38 +0000 (13:25 -0600)]
layers: Update PV variable names, clang-format
Change-Id: I1c1da95bbfa1dce31b2b109ec7dea0c770af44c9
Mark Lobodzinski [Tue, 9 Aug 2016 16:44:38 +0000 (10:44 -0600)]
layers: Add WSI support to parameter_validation
Change-Id: Ieb52e121632c6297eee5e37baeade5f0c8f8f3e5
Mark Lobodzinski [Tue, 9 Aug 2016 19:41:09 +0000 (13:41 -0600)]
layers: Validate Enabled Features in PV
ParameterValidation was using the hardware supported feature set for
validation -- these are now replaced with the application-enabled
features at CreateDevice time.
Change-Id: If52d3ae3e55c69611e02437d33a651d88ba7043d
Lenny Komow [Thu, 11 Aug 2016 17:23:15 +0000 (11:23 -0600)]
misc: Add vulkan C++ header
Lenny Komow [Thu, 11 Aug 2016 16:57:38 +0000 (10:57 -0600)]
demos: Fix useless NULL check in cube and tri
Tobin Ehlis [Thu, 11 Aug 2016 13:43:03 +0000 (07:43 -0600)]
layers: Refactor function names
Capitalize first letter of Validate[Image|Buffer]UsageFlags() functions
Tobin Ehlis [Thu, 11 Aug 2016 13:16:53 +0000 (07:16 -0600)]
layers: Fixes GH846 Use IMAGE_USAGE bits for images
Cut-and-paste bug. Various checks for images usage flags were being made
against BUFFER_USAGE enums instead of IMAGE_USAGE enums
Mark Lobodzinski [Wed, 10 Aug 2016 19:12:23 +0000 (13:12 -0600)]
layers: Update details doc w/new queue family test
Added MismatchedQueueFamiliesOnSubmit() test for validating
DRAWSTATE_INVALID_QUEUE_FAMILY errors.
Change-Id: I86ff4da21840a679e755790ae6c7810a0f752028
Mark Lobodzinski [Tue, 9 Aug 2016 22:42:24 +0000 (16:42 -0600)]
layers: GH790, Validate queue family at submit-time
Command buffers must come from a command pool created with the same
queue family index as the queue they are submitted on.
Change-Id: Ifd1d73a09643c11852d807cb7edfc881827005dd
Chris Forbes [Tue, 9 Aug 2016 22:41:27 +0000 (10:41 +1200)]
layers: Adjust color/input attachment layout checks style
For consistency with depth
Signed-off-by: Chris Forbes <chrisforbes@google.com>
Tony Barbour [Wed, 10 Aug 2016 19:39:36 +0000 (13:39 -0600)]
demos: Fix operator precedence problem with window width
Change-Id: Ief0b260528a6eb38788f88ec8a463307522849e8
Cody Northrop [Fri, 5 Aug 2016 20:21:21 +0000 (14:21 -0600)]
toolchain: Fix SPIRV-Headers update script
Without specifying a branch, git pull fails.
Tobin Ehlis [Thu, 4 Aug 2016 16:17:19 +0000 (10:17 -0600)]
layers: Fix MapMem image layout validation
When mapping memory, check all of the bound image ranges and for any
that overlap with the map range, make sure that the image layout is
either PREINITIALIZED or GENERAL.
Tobin Ehlis [Thu, 4 Aug 2016 15:33:02 +0000 (09:33 -0600)]
layers: Rename validateMemRange()
This function is only used in MapMemory case so renamed to
ValidateMapMemRange() and added a header comment to make use
more clear.
Tobin Ehlis [Thu, 4 Aug 2016 14:03:32 +0000 (08:03 -0600)]
layers: Rename DEVICE_MEM_INFO struct members
Update names from camelcase to lowercase w/ "_" as we're slowly migrating
to that uniform style
Tobin Ehlis [Thu, 4 Aug 2016 13:53:46 +0000 (07:53 -0600)]
layers: Remove image member from DEVICE_MEM_INFO
The image member is broken and was superceded by objBindings which track
all objects bound to a single memory allocation.
This is also temporarily disabling a check for image layout when mapping
memory, but that check was broken and will be fixed in subsequent CL.
Chris Forbes [Mon, 8 Aug 2016 20:17:14 +0000 (08:17 +1200)]
layers: Account for read-only depthstencil attachments in ValidateLayout
The depth stencil attachment can be DEPTH_STENCIL_READ_ONLY_OPTIMAL.
Signed-off-by: Chris Forbes <chrisforbes@google.com>
Mark Lobodzinski [Fri, 5 Aug 2016 18:05:16 +0000 (12:05 -0600)]
layers: Update validation layer details doc
Added new image test for undefined format in CreateRenderPass
attachment description and updated notes for missing tests.
Change-Id: I6a928213da8dc86d59a33a704cbbec8bd3cfbd45
Mark Lobodzinski [Fri, 5 Aug 2016 17:30:15 +0000 (11:30 -0600)]
layers: LX578, Add CreateRenderPass format check
Validate that AttachmentDescription.Format is not UNDEFINED.
Change-Id: Id348905aadfdc552c3b674a5752cdbc350022d8e
Mark Lobodzinski [Fri, 5 Aug 2016 17:20:21 +0000 (11:20 -0600)]
layers: Add minor Image::CreateRenderPass updates
Combined some repeated for-loops, code standards fixups, etc., in
the image layer.
Change-Id: I3952691d392898ce3c8fa7cc0a6762a40d06220d
Tony Barbour [Mon, 8 Aug 2016 17:04:17 +0000 (11:04 -0600)]
demos: Fix ifdefs to allow compilation without XLIB
Change-Id: I3fbed70e842bf327437d77f56cd0fa7848ab5d19
Tobin Ehlis [Tue, 19 Jul 2016 19:25:12 +0000 (13:25 -0600)]
tests: Add ColorBlendLogicOpTests
This is a dual-purpose test. If the underlying device supports logicOp,
then attempt to use an invalid logicOp and verify that an error is flagged.
If the device doesn't support logicOp, attempt to use it and verify that
the correct error is flagged.
Also update documentation.
Tobin Ehlis [Tue, 19 Jul 2016 17:22:29 +0000 (11:22 -0600)]
tests: Add IndexBufferNotBound test
Attempt and indexed draw with no index buffer bound.
Tobin Ehlis [Tue, 19 Jul 2016 17:20:24 +0000 (11:20 -0600)]
layers: Exclude index buffer from CBSTATUS_ALL mask
The CBSTATUS_ALL mask is set to default all dynamic state to static in the
PSO. The index buffer doesn't fall under the other dynamic state umbrella
so excluding it from the CBSTATUS_ALL mask.
Tobin Ehlis [Tue, 19 Jul 2016 16:50:30 +0000 (10:50 -0600)]
tests: Add FramebufferIncompatible test
Test where secondary command buffer has different framebuffer than
primary command buffer, which is a violation.
Update documentation.
Tobin Ehlis [Tue, 19 Jul 2016 16:45:24 +0000 (10:45 -0600)]
layers: Remove duplicate framebuffer incompatible check
The existing DRAWSTATE_FRAMEBUFFER_INCOMPATIBLE check was a duplicate
of a check performed a few lines earlier in the validateFramebuffer()
function.
Update the check in that function to use the DRAWSTATE_FRAMEBUFFER_INCOMPATIBLE
enum and remove the duplicate check.
Tony Barbour [Fri, 5 Aug 2016 20:55:20 +0000 (14:55 -0600)]
demos: Fix cube to handle >1 event per frame
Change-Id: I6532f75f285b7428993da9314e128bfe5e476829
Cody Northrop [Fri, 5 Aug 2016 18:30:44 +0000 (12:30 -0600)]
demos: Fix Android build on OSX and Windows
Mike Stroyan [Thu, 4 Aug 2016 17:20:14 +0000 (11:20 -0600)]
demos: Flip cube texture on android
Flip the cube texture on android to track commit cb7f374.
Recreate lunarg.ppm.h from lunarg.ppm using xxd.
xxd -g 1 -c 12 -i lunarg.ppm > android/include/lunarg.ppm.h
Mark Lobodzinski [Fri, 5 Aug 2016 15:38:18 +0000 (09:38 -0600)]
layers: Reenable fix for DS layout transitions
Fix for GH650, plus added fix for cube/tri.
Change-Id: I66c2332c30eb34a0f022c033efd9b1c5b8284c32
Ian Elliott [Fri, 5 Aug 2016 15:08:30 +0000 (09:08 -0600)]
GH 818: Improve swapchain error for vkCreateSwapchainKHR()
When the the application calls vkCreateSwapchainKHR(), the
pCreateInfo->surface used must have been previously checked as supported,
by calling vkGetPhysicalDeviceSurfaceSupportKHR(). The error message needed
to be more clear about this.
davidhubbard [Thu, 21 Jul 2016 22:11:59 +0000 (15:11 -0700)]
build: pr787 - CMAKE_INSTALL_PREFIX default
CMAKE_INSTALL_PREFIX default is /usr/local on unix
In order to build with a custom CMAKE_INSTALL_PREFIX, the line
set (CMAKE_INSTALL_PREFIX "") must be removed.
CMake set will overwrite anything specified on the command
line with cmake -DCMAKE_INSTALL_PREFIX.
Change-Id: I3bc905b4ad8fb08917e500e4987eb0277ba74a40
Lenny Komow [Thu, 4 Aug 2016 16:32:27 +0000 (10:32 -0600)]
winsdk: Make installer version programmable
Tobin Ehlis [Wed, 3 Aug 2016 22:51:43 +0000 (16:51 -0600)]
layers: Update string concatenation in struct_string_helper_cpp
For structs with many fields, the generation of the final string representation
created by vk_struct_string_helper_cpp.h was getting obscene. The final string
concatentation for VkPhysicalDeviceFeatures exceeded 3000 cols and was crashing
clang.
This change builds the final string in a number of steps rather than trying to
do it all on a single line.
John Drinkwater [Mon, 1 Aug 2016 16:00:00 +0000 (17:00 +0100)]
loader: support manifests in XDG locations
Some users set the environment variable XDG_DATA_HOME to relocate
~/.local/share/ to a more friendly location and so it is not wise to
look solely at that location.
This change adds basic support for that env var without changing the
behaviour for typical users. If XDG_DATA_HOME is defined, the loader
checks XDG_DATA_HOME/vulkan/..., if HOME is defined the loader will
check HOME/.local/share/vulkan/..., and with neither it skips looking
for user manifests.
loader_get_manifest_files() now takes a relative location inside the
config path eg `/vulkan/implicit_layer.d` and appends that onto the
preferred location.
vk_loader_platform.h Linux defines got minor adjustments to support this
change, with an added bonus of being more readable.
Change-Id: I44e8a99f2a984f94dc33cdda122e6c417d3a3653
Chris Forbes [Thu, 4 Aug 2016 03:59:38 +0000 (15:59 +1200)]
layers: Fix function interception list for param validation
A bunch of things were missing here.
Signed-off-by: Chris Forbes <chrisforbes@google.com>
Tobin Ehlis [Thu, 4 Aug 2016 02:30:07 +0000 (20:30 -0600)]
layers: Disable previous fix for DS layout transitions
Fix to always transition both depth and stencil aspects for DS images
is causing errors on cube and tri. Disabling the fix and test for now
to avoid unwanted false positives.
Mark Lobodzinski [Mon, 1 Aug 2016 21:51:39 +0000 (15:51 -0600)]
layers: GH650, Fix D/S image layout validation
When an imageView of a depth/stencil image is used as a depth/stencil
framebuffer attachment, the aspectMask is ignored and both depth and
stencil image subresources are used. Validation was throwing errors
as only the specified aspectMask transition was tracked.
Change-Id: I4f45eec74040448ba3ed52b07268fab3b3cb9318
Tobin Ehlis [Wed, 3 Aug 2016 15:59:17 +0000 (09:59 -0600)]
layers: Check vtx buffer binding
Need to check vtx buffer binding based on binding values set in
pVertexBindingDescriptions array if present.
Ian Elliott [Wed, 3 Aug 2016 20:57:11 +0000 (14:57 -0600)]
Fix Android build for mips64: NULL -> VK_NULL_HANDLE
This should affect other architectures as well. A handle can't be assigned to
NULL (may get 32-64 type issues). Must set a Vulkan handle to VK_NULL_HANDLE.
Tony Barbour [Thu, 28 Jul 2016 18:01:45 +0000 (12:01 -0600)]
demos: Remove the need for QueueWaitIdle in cube
Change-Id: Iddccf0d672632ad7f0821fb98c685c944c2b8b77
Tony Barbour [Thu, 28 Jul 2016 16:50:13 +0000 (10:50 -0600)]
demos: Use renderpass finalLayout to get to PRESENT_SRC_KHR
instead of an explicit memory barrier
Change-Id: I9c9c19ee6640fc696576d67ffc608b9205d84166