aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2017-08-31layers: Account for push descriptor sets in CVMark Lobodzinski
Change-Id: I1095edce0f26e2a4ced6fa301143622dc5cd0afd
2017-08-31layers: Match state record pattern for VOID APIsMark Lobodzinski
Also straightened out the locking/unlocking for PushDescriptorSets. Change-Id: Ic72bc693d16e7fa85df117d29abc1adc5a29ada6
2017-08-31layers: Update desc binding state for PushDescSetsMark Lobodzinski
Using PushDescriptorSets in a pipeline with normal Allocated descriptor sets resulted in incorrect descriptor binding validation errors. PushDescriptors are now run through the descriptor binding state-update functions. Change-Id: Ib702949af6de0b8638401c7eeb841c2590998e82
2017-08-31layers: Intercept PushDescriptorSets in CVMark Lobodzinski
Change-Id: Ifabf7058b4ded33ab191a0043d9ef390b4c8cb06
2017-08-31layers: Refactor CmdBindDescSets for pre/postMark Lobodzinski
Validation and state updates are now somewhat less tangled. Change-Id: Ia666215a73ce02d2fbc326fb5b37b3361d83bbe3
2017-08-29android: Update shader toolchain revisionsCody Northrop
Pulled from: https://github.com/google/shaderc/blob/90a90d6f745704ac05afe70b7e8f759bec2ff493/known_good.json
2017-08-29loader: Fix GetProcAddress loading illegal funcsLenny Komow
The loader would return an unknown device extension handler when specifying a function from a layer that was available, but not enabled. Change-Id: I0d77a7489d66e4d77aa8446018ec545c930f5bcf
2017-08-28external: Update commit IDs: glslang, tools, headerMike Weiblen
Change-Id: Ic0777dda7b6958d2454dfec288630044e6f70db3
2017-08-28build: Improve component enables usage textJeff Juliano
2017-08-28build: Add no-sync to update_ext_srcs batch fileJeff Juliano
Complete support for cygwin environment by adding --no-sync support to update_external_sources.bat. Also change command line parsing for the the .bat script to be similar to the .sh script. Change-Id: Ie813938654e7f4bb9575eef2587f36ca2933f30c
2017-08-28build: Improve cygwin build supportJeff Juliano
Partially support cygwin environment by adding --no-build to update_external_sources.sh Change-Id: I9fa35d6c720dd05a11c307d3da4d09415934899e
2017-08-28build: Add missing quotesJeff Juliano
Change-Id: Icff4a71bbedc3ee95d2dc2b85224a3c2eee74cb6
2017-08-28scripts: PV codegen handle multiple requiresMike Schuchardt
Modify parameter validation codegen to handle multiple require blocks in an extension, each with additional extension dependencies. Change-Id: I336569ca19808f3dca342eb65fd076599c4fb329
2017-08-25layers: use unique_ptr for pipeline mapChris Forbes
2017-08-25Loader: Fix out-of-memory handling in loaderGetDeviceRegistryFilesSlawomir Cygan
Wrongly handled OOM error causes dEQP-VK.api.object_management.alloc_callback_fail test to fail, because wrong error code is returned.
2017-08-25layers: Fix crash in CreateGraphicsPipelines reading from moved-from ptrChris Forbes
2017-08-25Revert "Revert "layers: unique_ptr for temp compute pipelines""Chris Forbes
This reverts commit 615dc4e3ea0495bc28130377b9e637e9979a560e.
2017-08-25Revert "Revert "layers: Introduce some unique_ptr into pipeline creation""Chris Forbes
This reverts commit 5d6aaa553b634747fb2761c6e5b665bdae54d206.
2017-08-25Revert "layers: Introduce some unique_ptr into pipeline creation"Chris Forbes
This reverts commit 7d35703bdc03d94cad272b5ea3ede8d586f57e88.
2017-08-25Revert "layers: unique_ptr for temp compute pipelines"Chris Forbes
This reverts commit cfc1ed15584a12ef62e113c8daf673c6a68ce29c.
2017-08-25layers: unique_ptr for temp compute pipelinesChris Forbes
2017-08-25layers: Introduce some unique_ptr into pipeline creationChris Forbes
2017-08-24scripts: Enable instance extension checks in PVMark Lobodzinski
Parameter_validation's hammer for excluding some pdev-ish checks was too large. This adds extension dependency checks for about 50 more APIs. Change-Id: Icb44cdb36c8c0384781e04e207ceb18d9f67ff0c
2017-08-23header: Update to version 1.0.59 of the vulkan hdrMark Lobodzinski
- updated vulkan.h - updated vk.xml - updated Win/Lin json files - rebuilt and updated vulkan.hpp - updated vk_validation_error_database.txt - updated vk_validation_error_messages.h - added new code-generated VUIDs (16) to error database - modified object tracker for VUID corner-case - updated vulkaninfo.c for STYPE name change Change-Id: I0870e8bc4e84867e05bd466c13c7428b9b7365ac
2017-08-23layers: Use correct data layer in vkCreateInstance in param validationGabríel Arthúr Pétursson
2017-08-22layers:Remove disturbed descriptor perf warningTobin Ehlis
Fixes #2020 Support from devs to remove this perf warning so just killing it. Added a comment for future work where we can track which descriptors are disturbed and reference that if a user attempts to use a disturbed descriptor that isn't bound. Also commented out associated test and filed #2022 to track enhancement making note of disturbed descriptors if used unbound.
2017-08-17layers: Fix memory leaks in functionsJeremy Kniager
Change-Id: I8e25adabefde3a04be5536ce4c5c2d5920a76140
2017-08-17vkjson: Add support for AndroidCody Northrop
This commit adds vkjson and vkjson_info to the Android build. It is only generated as an executable for devices with root access, but it could be expanded to an APK with some more boilerplate work. See updates to BUILD.md for how to build and run on the device.
2017-08-17layers: Wire up static_status check for CmdSetScissorChris Forbes
2017-08-17layers: Wire up static_status check for CmdSetViewportChris Forbes
2017-08-17layers: Drop error for binding compute pipeline inside renderpassChris Forbes
It's perfectly valid to bind the compute pipeline inside a renderpass. An application only may not /dispatch/ compute work inside a renderpass.
2017-08-17layers: Drop out some redundant checks already covered by OTChris Forbes
2017-08-17layers: Calculate viewport/scissor state bits correctlyChris Forbes
2017-08-17layers: (re)-add viewport and scissor cbstatus flagsChris Forbes
We won't actually check these at draw time since we have more precise per-viewport and per-scissor support there, but we need these in order to easily reject CmdSetViewport/CmdSetScissor when the pipeline doesn't have the appropriate dynamic state enabled.
2017-08-16android: Updates for NDK r15Cody Northrop
Removes app_dummy from apps that use native activity. For more details refer to: https://github.com/android-ndk/ndk/issues/381
2017-08-16layers: Fix img layout state in CmdExecuteCommandsAlex Smith
Previously the layout state in the primary command buffer was just overwritten with the state in the secondary command buffer. This can lead to spurious errors upon submission of the primary CB, if an image used in the secondary CB is used prior to CmdExecuteCommands in the primary CB with a different initial layout. This is because the initialLayout field for the image on the primary CB is overwritten with that of the secondary CB. An example case that was incorrectly erroring (these commands refer to the same image, newly created): (primary buffer) vkCmdPipelineBarrier, transition UNDEFINED -> TRANSFER_DST_OPTIMAL vkCmdExecuteCommands (secondary buffer) ... vkCmdCopyBufferToImage, layout TRANSFER_DST_OPTIMAL Just before the CmdExecuteCommands, the image had initialLayout = UNDEFINED and layout = TRANSFER_DST_OPTIMAL on the primary CB, and initialLayout = layout = TRANSFER_DST_OPTIMAL on the secondary. After CmdExecuteCommands, the primary CB state is overwritten, so it has initialLayout = layout = TRANSFER_DST_OPTIMAL. At submission, this then errors because the global image layout is UNDEFINED. Fix by only setting initialLayout on the primary CB from the secondary if the image hasn't already been used on the primary. Change-Id: Iae248ed09b1f87598fd192ba3d6f0bcf7ad38ada
2017-08-16layers: Copy queue submit fcns in CmdExecuteCommandsAlex Smith
When a secondary command buffer is executed, copy all functions in its queue_submit_functions list to the primary command buffer. This is needed e.g. to ensure that functions registered to validate and update memory validity state for a command in the secondary CB get run upon submission of the primary CB. Fixes spurious memory invalid warnings on later commands after an image's memory has been initially made valid inside a secondary CB. Change-Id: I39d5a34f074942d5dedbf4c5a0295af957a92361
2017-08-16layers: Update Database to fix CIMark Lobodzinski
Couple of VUIDS were not added to the database. Change-Id: I8ad8868182c8d129622d616241f5e0a14cb5054e
2017-08-16layers: Check cb::static_status for most dynamic state settersChris Forbes
2017-08-16layers: Track static state bits separatelyChris Forbes
This gives us two advantages: - We no longer need to recalculate the state bits to remove for the old pipeline when binding a new pipeline. - We now have the set of bits to test against when trying to bind dynamic state for #614
2017-08-16layers: Invalidate old pipeline's static state when bindingChris Forbes
Previously we'd only ever or in new bits, causing us to miss cases where some state changes from static to dynamic within a CB. Also only fiddle with the state masks when binding a graphics pipeline -- previously we'd miss some other cases because binding a compute pipeline would set all the state bits.
2017-08-16layers: inline set_cb_pso_status into sole callerChris Forbes
2017-08-16Split out dynamicstate->flags conversionChris Forbes
2017-08-16layers: Move PV custom funcptrs into mapMark Lobodzinski
Simplifies steps necessary for new custom functions. Change-Id: Ib2d80346ebc42011dce74fdd8cee62adb4b3432c
2017-08-16layers: Re-architect parameter validation layerMark Lobodzinski
Changed the codegen to autogenerate validation functions for any new APIs without user intervention. Manual updates are only necessary to extend PV functionality. - parameter_validation.h is now checked into the layers directory - parameter_validation.cpp is now generated - parameter_validation_utils.cpp is new and contains any custom (non-generated) or housekeeping functions. - parameter_validation_utils.h is deprecated - updated database for new VUID coverage Change-Id: Ib9261894386145573ba9e8906ba4ad4e9fecbdfd
2017-08-16layers: Add checks for Image/ImageView usageJeremy Kniager
Change-Id: Ibb2ac5b5f4b4176f5745007598c2fe64665237c2
2017-08-15demos: Fix disappearing objects in smoketestKarl Schultz
When an object reaches the end of its "curve" path it receives a new curve. To ease the transition from the old curve to the new curve, the origin of the new curve is the ending point of the old curve. However, this can result in the starting point of the new curve being out of the view. This results in objects slowing leaving the view. Add code to move the origin of the new curve back inside the original view bounds only if the end of the old curve is out of the view bounds. This does not add any additional jarring because any object getting a new origin is already outside the view anyway. Change-Id: I50e88be453f31b9c37878f63c97d4c7c8154e718
2017-08-15header: Update to version 1.0.58 of the vulkan hdrMark Lobodzinski
- updated vulkan.h - updated vk.xml - updated cgenerator.py - updated Win/Lin json files - updated vulkan.hpp - updated vk_validation_error_messages.h - updated vk_validation_error_database.h Change-Id: I8c525b6a2bd69914440c6d7984a67446b27e6c23
2017-08-14demos: Add compositeAlphaFlags fix to cube.cTony Barbour
Change-Id: Id19d11e909ffc21c4aa6a419b071ba53594ae94f
2017-08-14demos: cube.cpp - iterating over compositeAlphaFlagsgwizdz
Error in for loop condition Change-Id: I8c775f961a6c05dd36e7acfdda6e94399365f90d