aboutsummaryrefslogtreecommitdiff
path: root/layers/device_limits.cpp
AgeCommit message (Collapse)Author
2016-06-10layers: GH536, Update CmdFillBuffer validationMark Lobodzinski
Was ignoring VK_WHOLE_SIZE. Moved validation cases for Update/FillBuffer to Parameter Validation layer (as they were stateless) and added the remaining additional stateless valid usage checks. Change-Id: I0f41c6ba55f218a6db9fb34736a2abc52f856edf
2016-06-09layers: PR632, Change devlimits errors to warningsJan-Harald Fredriksen
Replace call sequence errors with warnings for vkEnumeratePhysicalDevices and GetPhysicalDeviceQueueFamilyProperties. Change-Id: I1505f4a2b339ac7ef435da8b3ec2f85612026a42
2016-06-06layers: Add default layer error message configMark Lobodzinski
Allows layers to output error messages even if no vk_layer_settings.txt config file is present. Sets defaults to LOG_MSG, error, stdout. A layer settings file will override any default values. If no settings file is present and an app creates a debug callback, the default callbacks will be removed and unregistered. Change-Id: I49f37189665816df58c258b9e9629f2bf76751c8
2016-06-02layers: simplify v0 function implementationsChia-I Wu
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.
2016-05-11layers:LX#470 Fix poor use of hex vs dec outputMark Mueller
1) Introduce convention of explicitly placing "0x" before hex format requests for clarity (don't use "%#") 2) All lower case in hex output (except w/stringstream which refuses to do anything but uppercase, possibly only on windows). 3) Decorated pointers are printed for all Vulkan structure types. 3) Some intelligence in generators based on Vulkan variable name: if the Vulkan variable name contains ("flag", "bit", "offset", "handle", "buffer", "object", "mask") it will be output in hexadecimal format 4) Remove "using namespace std;" from global scope of vk_struct_string_helper_cpp.h Change-Id: Idbae73bfdaa3bc059543d43b209373cd0bcbc099
2016-05-05device_limits: avoid invalid GIPA call in vkCreateDeviceChia-I Wu
Save VkInstance in layer_data so that we query vkCreateDevice with a valid instance.
2016-05-05device_limits: improve GetInstanceProcAddrChia-I Wu
Handle device commands as well. Move handling of interface functions to v0's vkGetInstanceProcAddr.
2016-05-05device_limits: fix a typo in intercept_core_instance_commandChia-I Wu
s/vkEnumerateInstanceDeviceProperties/vkEnumerateDeviceExtensionProperties/.
2016-05-05device_limits: refactor GetInstanceProcAddrChia-I Wu
Split command intercepting out to intercept_core_instance_command.
2016-05-05device_limits: intercept CmdSetScissor and CmdSetViepwortChia-I Wu
They are defined but unused.
2016-05-05device_limits: add intercept_core_device_commandChia-I Wu
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.
2016-05-05device_limits: improve EnumerateDeviceExtensionPropertiesChia-I Wu
Call down the next layer unless pLayerName is device_limits.
2016-05-05device_limits: add device_limits::global_layerChia-I Wu
Replace dl_global_layers with global_layer. There is no plan to define more than one layer in the same namespace.
2016-05-05device_limits: drop vk prefix for layer functionsChia-I Wu
Drop VK_LAYER_EXPORT as well.
2016-05-05device_limits: put layer functions into a namespaceChia-I Wu
Put all layer fucntions/data into device_limits namespace. I had to add some wrappers to make everything work.
2016-05-05device_limits: move vkEnumerate*Properties aroundChia-I Wu
Move them toward the end of the file.
2016-04-19misc: Update licenses to Apache 2.0Jon Ashburn
Change-Id: Id447f4c8c53d33f9192940bdd3ae727b7b738a97
2016-04-08layers: Use real enum value for alignment checks in device_limitsChris Forbes
Previously this used '1'. Also clean up the enum, and description of device_limits checks. Found by inspection while reviewing #290. Change-Id: I710d9b8fad0ca027eb3de67b6c2c70b5628af5a5 Signed-off-by: Chris Forbes <chrisforbes@google.com>
2016-04-07layers: Don't exceed max allowed color attachments.Michael Lentine
2016-04-06layers: Fix unsafe bool mix warnings (part 2)Dustin Graves
Fixes the MSVS warnings regarding unsafe mix of VkBool32 and bool for the device_limits, image, parameter_validation, and threading layers. Converts all Boolean usage internal to the layers to bool/true/false. The VK_TRUE and VK_FALSE values continue to be used with the Vulkan API components. Change-Id: I612d3f26050fadcd77ffca4d8723a7c734613816
2016-04-01layers: LX414: Fix device_limits alignment checkDustin Graves
Fix buffer/descriptor offset alignment checks in device_limits: - vkUpdateDescriptorSets offset check was not performed with the correct physical device alignments. - vkBindBufferMemory offset check was always performed with the UBO alignment. This check has been moved to core_validation, where the offset is checked against the alignment associated with its usage type and the alignment retrieved from vkGetBufferMemoryRequirements. Change-Id: I4f64e06c44972a224d1930cb0798a9f472b768f2
2016-03-25layers: DL - Get inheritedQueries support from physical device featuresTony Barbour
Change-Id: I6f9c045d6154d2c08aa2516caf8e250dcef22e84
2016-03-22misc: Update to header version 1.0.6Jon Ashburn
Change-Id: Idf7a9d40278b796e16effa54e9b60668d275b8ec
2016-03-16layers: Move layer debug action initialization into layer_utilsMark Lobodzinski
Also removed dead code from the layer generation script. Change-Id: I64fdcaaf1aed8152de62079568c8e247333d8c61
2016-03-08layers: clang-format layers directoryJon Ashburn
Change-Id: I318e3759829f33441e57aafedec1e9ec06d658c4
2016-03-04validation: Promote validation warnings to errorsTony Barbour
Change-Id: Ib527e646aabbd0aecbadf9071ca9e271a8729735
2016-03-03misc: Remove lunarg_debug_marker extensionJon Ashburn
This device extensions was not completely supported in any layer. It had partial support (intercept) in draw_state and device_limits. This extension is being changed and has a formal proposal in Khronos as debug_marker_ext. Removing the existing extension since it is deprecated; once the debug_marker_ext gets registered by Khronos, layers might want to start using the ObjectTag/ObjectName commands to supplement error report messages in debug_report_ext. Since debug_report_ext might get changed as part of Khronos review, don't add it yet.
2016-02-24layers: Make layer option names more consistent and update docsMark Lobodzinski
2016-02-18layers: MR221: Android needs Enumerate*PropertiesCourtney Goeltzenleuchter
Android queries information about layers and extensions from the layers via the Enumerate*Properties calls so need them to function correctly. This patch adds missing functions. ---------------------------
2016-02-18layers: MR221: Update extension info to match json filesCourtney Goeltzenleuchter
2016-02-18layers: MR221: Fix implementationVersionCourtney Goeltzenleuchter
2016-02-14layers: Fix Windows build with device_limits.cppJon Ashburn
2016-02-12header: Update 1.0.3 header revision for inclusion of debug report extensionMark Lobodzinski
Removed vk_ext_debug_report.h (contents moved into vulkan.h) Renamed debug report message enums
2016-02-10Remove Khronos confidential clause from license text.Karl Schultz
2016-02-10layers: Enable Wall and Werror.Michael Lentine
2016-02-03layers: Fix Windows build error in device_limitsJon Ashburn
2016-02-03layers: Check that queryFlags is valid if enabled.Michael Lentine
2016-02-03layers: Add check to make sure inherited queries in enabled before use.Michael Lentine
2016-02-03Revert "layers: Clang-format changes for files in layers dir of repo"Mark Lobodzinski
This reverts commit e260acfb96ea20945149ede6a250ef622ca7fd03. The clang-format changes need to be postponed until just prior to public release to facilitate MRs.
2016-02-02layers: Clang-format changes for files in layers dir of repoMark Lobodzinski
2016-02-02layers: Validation Layer Copyright UpdatesMark Lobodzinski
2016-01-25LAYERS: More 32-bit fixes caused by recent commits.Mark Young
Had to fix more 32-bit build issues caused by recent commits.
2016-01-20debug_report: Integrate review feedbackCourtney Goeltzenleuchter
Conflicts: include/vulkan/vk_ext_debug_report.h Conflicts: include/vulkan/vk_ext_debug_report.h
2016-01-20loader: implement new layer init methodCourtney Goeltzenleuchter
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
2016-01-18layers: LX257, Validate Uniform/Storage buffer offset alignmentsMark Lobodzinski
2016-01-11misc: Move to Vulkan header version 0.222Jon Ashburn
2016-01-04layers: Enable fine-grained filtering of device_limits log messagesMark Lobodzinski
2015-12-31misc: rename startXXX to firstXXX and add firstXXX param to setviewport/scissorJon Ashburn
Header file changes going to 213 version
2015-12-29layers: MR89, Fix gtests for androidMichael Lentine
Conflicts: layers/draw_state.cpp layers/image.cpp layers/mem_tracker.cpp
2015-12-17debug_report: Update extension nameCourtney Goeltzenleuchter