aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2015-06-30cube: fix validation and clean up errorsTony Barbour
2015-06-30Layers: Fix screenshot seg fault, changed accesses to dispatch tblDavid Pinedo
2015-06-30demos: Ensure VertexInputState is NULL if unusedMark Lobodzinski
Was passing in pointer to a null VertexInputState structure, but driver needs null pointer if structure unused.
2015-06-29Revert "loader: Remove CreateDevice from loader's instance"Courtney Goeltzenleuchter
This reverts commit b81161d0fa45c3b1333d8954220c992c5eb8aac4. Change did not match commit message.
2015-06-29loader: Need to use ICD's GetDeviceProcAddrCourtney Goeltzenleuchter
The loader_GetDeviceProcAddr is the terminator for the CreateDevice chain. It needs to call the ICD's GetDeviceProcAddr to get the correct function pointer not the object's current dispatch table that points at the beginning of the chain. Saw issue when running cube with only DRAW_STATE layer enabled.
2015-06-29loader: Remove CreateDevice from loader's instanceCourtney Goeltzenleuchter
Need to remove the CreateDevice function pointer from the loader's instance table.
2015-06-29loader: Move CreateDevice to device tableCourtney Goeltzenleuchter
Discovered an issue where a layer was doing cleanup in it's DestroyDevice function but the CreateDevice was never called. This happened because the extension was only enabled on the device chain and the device chain doesn't actually call CreateDevice. That happens on the Instance chain. Making it so that we can call down the device chain - which is terminated by the ICD. We need to know the real device object to construct the device chain heiarchy and when calling down the device chain it should end with the ICD doing the actual device object creation. This patch fixes the issue by using the same process as CreateInstance. The loader will call the ICD's CreateDevice and pass that in the *pDevice argument. The layers then ignore the PhysicalDevice parameter and use the *pDevice to access the device chain. To prevent the ICD from being called twice needed to stub in a special loader_GetDeviceChainProcAddr to provide a stub for only CreateDevice as the end of the chain. integrate review feedback.
2015-06-29layers: Do not advertise support for WSICourtney Goeltzenleuchter
Layers that do not implement WSI features yet can 'trace' WSI calls do not need to advertise WSI as an extension. Any WSI calls made will land in the layer if it hooks those calls. Otherwise should not care about WSI.
2015-06-29layers: Abort logging if null debug_report ptrCourtney Goeltzenleuchter
If a layer were to only be enabled on the device chain it would not have had a chance to allocate a debug_report data structure. Just treat such cases as having debug_report disabled.
2015-06-29layers: Remove unneeded assertsCourtney Goeltzenleuchter
We'll soon break the rule being asserted, so remove them.
2015-06-29generator: Add more debug statementsCourtney Goeltzenleuchter
The location comments in the generated code help a lot in determining what part of the generator generates what code.
2015-06-29generator: Clear dispatch tableCourtney Goeltzenleuchter
Finding entries that are not filled in properly is easier if the table is initialized to zeros.
2015-06-29loader: Need to search device extension cacheCourtney Goeltzenleuchter
Code was searching global extension cache for extensions enabled at CreateDevice time. List are similar but not identical and cause vulkaninfo to hit a segfault.
2015-06-29loader: Add debug infoCourtney Goeltzenleuchter
2015-06-29vulkaninfo: Use app's extension count, not systemCourtney Goeltzenleuchter
Was telling the driver to enable more extensions than intended.
2015-06-29vulkaninfo: handy debug outputCourtney Goeltzenleuchter
2015-06-29vulkaninfo: Need WSI extension for some queriesCourtney Goeltzenleuchter
2015-06-29vulkan.h: V110 #13864 -- Border Color Values UnderspecifiedTony Barbour
2015-06-29layers: ObjectTracker cleanupTobin Ehlis
Removed some unused error codes. Updated INVALID_OBJECT error to correctly be flagged.
2015-06-26vulkan.h: Bug 14171 - remove unused structure type enumsTony Barbour
2015-06-26vulkan.h: Bug 14153 - remove maxInlineMemoryUpdateSizeTony Barbour
2015-06-26vulkan.h: Bug 14136 - reorder logicop enumsTony Barbour
2015-06-26vulkan.h: Bug 13900 - Remove initialCount from semaphoresTony Barbour
2015-06-26layers: Use new param checker layer.Jeremy Hayes
2015-06-26vulkan.h: Bug 13616 Clarification of types of sample countsTony Barbour
2015-06-26vulkan.h: Bug 13939 Remove references to depth/stencil resolveTony Barbour
2015-06-25layers: Flag DrawState INVALID_RENDERPASS error if NULL RenderPass used to ↵Tobin Ehlis
Begin/End/Continue a RenderPass
2015-06-25layers: Warn in DrawState if DescriptorSet bound that was never updated.Tobin Ehlis
2015-06-25layers: In DrawState, validate correct use of RenderPassTobin Ehlis
This change validates certain API calls are made inside of or outside of a RenderPass as appropriate. Exact restrictions included in this changelist are included below. Also fixed cube and tri demos to Bind Pipeline & DescriptorSets within RenderPass and updated some layer validation tests. The following calls must be within RenderPass: vkCmdBindPipeline() w/ GFX pipelineBindPoint vkCmdBindDescriptorSets() w/ GFX pipelineBindPoint vkCmdBindDynamicStateObject() vkCmdBindIndexBuffer() vkCmdBindVertexBuffers() vkCmdEndRenderPass() The following calls must be outside of RenderPass: vkCmdBindPipeline() w/ COMPUTE pipelineBindPoint vkCmdBindDescriptorSets() w/ COMPUTE pipelineBindPoint vkCmdBlitImage() vkCmdResolveImage() vkCmdBeginRenderPass()
2015-06-25layers: Add DrawState check to verify Draw* cmds only issued within RenderPassTobin Ehlis
2015-06-25layers: Add DrawState check to verify that Pipeline layout from ↵Tobin Ehlis
vkCmdBindDescriptorSets() matches layout from PSO at Draw time. Also fix a bug where PSO status flags were not getting set into Cmd Buffer.
2015-06-25layers: Flag DrawState INVALID_RENDERPASS error if NULL RenderPass used to ↵Tobin Ehlis
Begin/End/Continue a RenderPass
2015-06-25vulkan.h: V109 -- Remove minLod from VkImageViewCreateInfoTony Barbour
2015-06-25vulkan.h: V108 -- Static Types, Bug# 13919Tony Barbour
2015-06-25layers: Correctly set Object Type for Dynamic State when flagging errorTobin Ehlis
2015-06-25layers: Report error in DrawState if vkCmdBlitImage() called during RenderPass.Tobin Ehlis
2015-06-25layers: Added DrawState check to flag error if compute pipeline bound during ↵Tobin Ehlis
RenderPass
2015-06-24Bug 14014: Allow multiple entrypoints in modulesCourtney Goeltzenleuchter
https://cvs.khronos.org/bugzilla/show_bug.cgi?id=14014 Header and minimal code changes to include support for multiple entrypoints in a shader module. Driver implementation TBD.
2015-06-24bug 14016: Make vkResetFences take const pFencesCourtney Goeltzenleuchter
https://cvs.khronos.org/bugzilla/show_bug.cgi?id=14016
2015-06-24screenshot: remove unneeded initialization codeCourtney Goeltzenleuchter
The device dispatch is setup in GetDeviceProcAddr, don't need to do it in layer's CreateDevice.
2015-06-24screenshot: Need to wrap more functionsCourtney Goeltzenleuchter
Need to include CreateInstance, DestroyInstance and CreateDevice in screenshot's GetInstanceProcAddr otherwise cannot process setup correctly.
2015-06-24screenshot: Need a DestroyInstanceCourtney Goeltzenleuchter
Need way to clean up resources allocated at CreateInstance.
2015-06-24loader: Use loader_GetInstanceProcAddrCourtney Goeltzenleuchter
By using the vkGetInstanceProcAddr function in the loader's instance dispatch table we will trace that function during initialization of layers. Don't want to do that so call loader internal function.
2015-06-24image: Need to get layer_data from correct placeCourtney Goeltzenleuchter
2015-06-24vulkan: remove unused error codeCourtney Goeltzenleuchter
2015-06-24vulkan.h: Remove vkGetFormatInfo, add features/limits (#12827, v125)Chris Forbes
NOTES: 1/ Some layers impact from vkGetFormatInfo -> vkGetPhysicalDeviceFormatInfo; some checks are currently disabled in ParamChecker pending discussion on the best way to do this. Similar checks in Image layer implemented via additional layer_data member to link back from VkDevice -> VkPhysicalDevice. 2/ VkPhysicalDeviceFeatures, VkPhysicalDeviceLimits members all zero for now; also some further churn to be done to the contents of these structures. Signed-off-by: Chris Forbes <chrisf@ijw.co.nz>
2015-06-24bug 13038: Remove support for multiple GPUsCourtney Goeltzenleuchter
https://cvs.khronos.org/bugzilla/show_bug.cgi?id=13038
2015-06-24loader: Add {}'s so that loader compilers on WindowsDavid Pinedo
2015-06-24layers: Add DrawState check to verify that Pipeline layout from ↵Tobin Ehlis
vkCmdBindDescriptorSets() matches layout from PSO at Draw time. Also fix a bug where PSO status flags were not getting set into Cmd Buffer.
2015-06-23vulkan.h: V104 -- Unify compute/graphics pipeline shader passing semantics, ↵Mark Lobodzinski
Bug# 13800