platform/upstream/Vulkan-Tools.git
9 years agolayers: Move image validation to separate layer.
Jeremy Hayes [Thu, 18 Jun 2015 16:12:39 +0000 (10:12 -0600)]
layers: Move image validation to separate layer.

9 years agolayers: Comment for newbies.
Jeremy Hayes [Thu, 18 Jun 2015 16:25:55 +0000 (10:25 -0600)]
layers: Comment for newbies.

9 years agoMemTracker: make sure get_mem_binding_from_object uses dispatchable object
Jon Ashburn [Thu, 18 Jun 2015 23:12:57 +0000 (17:12 -0600)]
MemTracker: make sure get_mem_binding_from_object uses dispatchable object

9 years agolayers: Add DrawState check for Invalid PSO CreateInfo state
Tobin Ehlis [Thu, 18 Jun 2015 21:59:33 +0000 (15:59 -0600)]
layers: Add DrawState check for Invalid PSO CreateInfo state

Report any violations in PSO restrictions as DRAWSTATE_INVALID_PIPELINE_CREATE_STATE error and don't call into driver.
Also fix a couple of broken error calls that had NULL dispatchable object parameter.

9 years agolayers: Add active_shaders flag to Pipeline node struct in DrawState
Tobin Ehlis [Thu, 18 Jun 2015 17:02:59 +0000 (11:02 -0600)]
layers: Add active_shaders flag to Pipeline node struct in DrawState

9 years agoLayers: ported to screenshot layer to master
David Pinedo [Thu, 18 Jun 2015 23:03:14 +0000 (17:03 -0600)]
Layers: ported to screenshot layer to master

9 years agoWindows: Fix build issues on Windows
Tony Barbour [Thu, 18 Jun 2015 22:29:32 +0000 (16:29 -0600)]
Windows: Fix build issues on Windows

Generate vulkan.def from header, fix use of alloca

9 years agolayers: Remove dead code.
Jeremy Hayes [Thu, 18 Jun 2015 16:11:03 +0000 (10:11 -0600)]
layers: Remove dead code.

9 years agodemos: Fix output location in tri.vert.
Jeremy Hayes [Thu, 18 Jun 2015 22:21:56 +0000 (16:21 -0600)]
demos: Fix output location in tri.vert.

9 years agolayers: Make WSI_LUNARG a device extension and check if enabled before use
Jon Ashburn [Thu, 18 Jun 2015 21:02:58 +0000 (15:02 -0600)]
layers: Make WSI_LUNARG a device extension  and check if enabled before use

Return NULL GetProcAddr if not enabled. Also fix DEBUG_MARKER bugs
in DrawState and ParamChecker

Also advertise WSI_LUNARG as a device extension in layers where it is used.

9 years agoloader: Remove support for WSI as an instance extension
Jon Ashburn [Thu, 18 Jun 2015 15:05:37 +0000 (09:05 -0600)]
loader: Remove support for WSI as an instance extension

WSI is now a device extension so remove loader support

9 years agodemos: Add missing spv dependency for cube
Cody Northrop [Thu, 18 Jun 2015 21:38:21 +0000 (15:38 -0600)]
demos: Add missing spv dependency for cube

9 years agolayers: Migrate draw_state.cpp to use log_msg utility for dbg reporting
Tobin Ehlis [Tue, 16 Jun 2015 21:50:44 +0000 (15:50 -0600)]
layers: Migrate draw_state.cpp to use log_msg utility for dbg reporting

Unified all reporting of INVALID_CMD_BUFFER messages under the getCBNode() function which eliminated lots of duplicate code.

9 years agolayers: Update DrawState intercept of Create/Destroy MsgCallback
Tobin Ehlis [Tue, 16 Jun 2015 15:04:30 +0000 (09:04 -0600)]
layers: Update DrawState intercept of Create/Destroy MsgCallback

9 years agomisc: Remove VK_PHYSICAL_DEVICE_INFO_TYPE_DISPLAY_PROPERTIES_WSI
Jon Ashburn [Tue, 16 Jun 2015 21:06:44 +0000 (15:06 -0600)]
misc: Remove VK_PHYSICAL_DEVICE_INFO_TYPE_DISPLAY_PROPERTIES_WSI

This is only used for getting display object which is no longer needed
since the GetDisplayInfoWSI() functions is removed

9 years agomisc: Remove GetDisplayInfoWSI()
Jon Ashburn [Tue, 16 Jun 2015 18:44:51 +0000 (12:44 -0600)]
misc: Remove GetDisplayInfoWSI()

This entry point was a challenge for loader to handle correctly. Since it is
going away in the new WSI proposal remove it in all components.

9 years agoloader: Fix memory free bug in destroying icd from DestroyInstance
Jon Ashburn [Tue, 16 Jun 2015 20:43:19 +0000 (14:43 -0600)]
loader: Fix memory free bug in destroying icd from DestroyInstance

9 years agolayers: Add linefeed after log message
Courtney Goeltzenleuchter [Tue, 16 Jun 2015 23:01:30 +0000 (17:01 -0600)]
layers: Add linefeed after log message

9 years agomem_tracker: Cannot get dispatch key after destroy
Courtney Goeltzenleuchter [Tue, 16 Jun 2015 22:58:52 +0000 (16:58 -0600)]
mem_tracker: Cannot get dispatch key after destroy

get_dispatch_key looks for the dispatch table pointer at
the beginning of the object. Once it's destroy that value
isn't available so grab the key before it's destroyed.

9 years agovulkan.h: V102 -- Rename min/maxDepth for DepthStencil, Bug# 13917
Mark Lobodzinski [Fri, 12 Jun 2015 17:14:17 +0000 (11:14 -0600)]
vulkan.h: V102 -- Rename min/maxDepth for DepthStencil, Bug# 13917

Renamed depth-stencil minDepth and maxDepth to minDepthBounds and
maxDepthBounds.

9 years agovulkan.h: V101 -- Remove programPointSize, Bug# 13928
Mark Lobodzinski [Fri, 12 Jun 2015 16:57:53 +0000 (10:57 -0600)]
vulkan.h: V101 -- Remove programPointSize, Bug# 13928

9 years agovulkan.h: V100 -- Remove vkClearDescriptorSets, Bug# 13783
Mark Lobodzinski [Thu, 11 Jun 2015 22:41:29 +0000 (16:41 -0600)]
vulkan.h: V100 -- Remove vkClearDescriptorSets, Bug# 13783

Conflicts:
layers/draw_state.cpp

9 years agovulkan.h: V99 -- Remove fixed-function point parameters, Bug# 13928
Mark Lobodzinski [Thu, 11 Jun 2015 22:23:27 +0000 (16:23 -0600)]
vulkan.h: V99 -- Remove fixed-function point parameters, Bug# 13928

Remove pointSize and pointFadeThreshold from VkDynamicRsStateCreateInfo.

9 years agovulkan.h: V99 -- Remove vkPinSystemMemory, Bug# 13926
Mark Lobodzinski [Tue, 16 Jun 2015 20:00:19 +0000 (14:00 -0600)]
vulkan.h: V99 -- Remove vkPinSystemMemory, Bug# 13926

9 years agovulkan.h: V99 -- Remove vkSetMemoryPriority, Bug# 13925
Mark Lobodzinski [Thu, 11 Jun 2015 20:37:55 +0000 (15:37 -0500)]
vulkan.h: V99 -- Remove vkSetMemoryPriority, Bug# 13925

Conflicts:
layers/mem_tracker.cpp

9 years agolayers: Report DEBUG_MARKER as supported in ParamChecker and DrawState
Jon Ashburn [Mon, 15 Jun 2015 22:08:39 +0000 (16:08 -0600)]
layers: Report DEBUG_MARKER as supported in ParamChecker and DrawState

9 years agolayers: Add GetPhysicalDeviceExtInfo to DrawState
Jon Ashburn [Mon, 15 Jun 2015 18:21:02 +0000 (12:21 -0600)]
layers:  Add GetPhysicalDeviceExtInfo to DrawState

Allows DrawState to be enabled in layers_validation_test

9 years agoDrawState: Fix destroying of maps so the map entrys get removed
Jon Ashburn [Mon, 15 Jun 2015 16:58:28 +0000 (10:58 -0600)]
DrawState: Fix destroying of maps so the map entrys get removed

They were hanging around and causing  double delete  assertions.

9 years agotests: Remove the enablement of the "Validation" extension
Jon Ashburn [Mon, 15 Jun 2015 15:30:12 +0000 (09:30 -0600)]
tests: Remove the enablement of the "Validation" extension

This accidentally got added resulting in validation layers always running.

9 years agoWIP: Debugging - REMOVE
Courtney Goeltzenleuchter [Mon, 15 Jun 2015 03:32:01 +0000 (21:32 -0600)]
WIP: Debugging - REMOVE

9 years agoloader: Grab next before destroying the data
Courtney Goeltzenleuchter [Mon, 15 Jun 2015 01:57:15 +0000 (19:57 -0600)]
loader: Grab next before destroying the data

9 years agolayers: Fix memtracker segfault for ill-behaved apps
Mark Lobodzinski [Thu, 11 Jun 2015 21:11:20 +0000 (16:11 -0500)]
layers: Fix memtracker segfault for ill-behaved apps

Freeing object memory before destroying object resulted in a segfault.
This is illegal but shouldn't crash the layer.

9 years agoshaderChecker: Add GetPhysDevExtInfo and fix CreateInstance
Jon Ashburn [Wed, 10 Jun 2015 22:43:31 +0000 (16:43 -0600)]
shaderChecker:  Add GetPhysDevExtInfo  and fix CreateInstance

9 years agoloader: Support multiple layers in one library by using <layerName>GetProcAddr
Jon Ashburn [Wed, 10 Jun 2015 22:11:42 +0000 (16:11 -0600)]
loader: Support multiple layers in one library by using <layerName>GetProcAddr

Get*ExtensionInfo string was being used to see if layer extensions are aliases.
Change this over to Get*ProcAddr  pointer since that will be different in
libraries that have multiple layers/ICDs in them.

Conflicts:
loader/loader.c

9 years agoloader: Remove the test for device layers activated; they follow create/destroy
Jon Ashburn [Wed, 10 Jun 2015 16:13:10 +0000 (10:13 -0600)]
loader: Remove the test for device layers activated; they follow create/destroy

9 years agoloader: Add device struct so can destroy layer info at DestroyDevice
Jon Ashburn [Wed, 10 Jun 2015 16:06:06 +0000 (10:06 -0600)]
loader: Add device struct so can destroy layer info at DestroyDevice

This also allows multiple logical devices per icd/gpu combo.  Old code
conflated a icd/gpu combo with a logical device

9 years agomem_tracker: Process config file debug actions
Courtney Goeltzenleuchter [Sun, 14 Jun 2015 17:37:01 +0000 (11:37 -0600)]
mem_tracker: Process config file debug actions

Now that debug report functionality is in place can use
that mechanism to handle logging enabled by vk_layer_settings.txt

9 years agolayers: Remove callback as runtime action
Courtney Goeltzenleuchter [Sun, 14 Jun 2015 17:35:37 +0000 (11:35 -0600)]
layers: Remove callback as runtime action

Doesn't make sense to have a callback action to
a config file setting, so remove that option.

9 years agolayers: Add config parser to compute debug flags
Courtney Goeltzenleuchter [Sun, 14 Jun 2015 17:34:49 +0000 (11:34 -0600)]
layers: Add config parser to compute debug flags

9 years agolayers: Move dbg flag print to config header
Courtney Goeltzenleuchter [Sun, 14 Jun 2015 17:33:06 +0000 (11:33 -0600)]
layers: Move dbg flag print to config header

The print function seems to go better here with the
config file parsing as they use similar values.

9 years agolayers: Add logging callback function for layers
Courtney Goeltzenleuchter [Sun, 14 Jun 2015 17:29:24 +0000 (11:29 -0600)]
layers: Add logging callback function for layers

Now that new debug report mechanism is in place, need
a callback function to output a log message.
Can then have layers register callback with debug_report
to have messages sent to stdout / FILE as well as
whatever the application asked for.

9 years agolayers: Set helpers as static inline
Courtney Goeltzenleuchter [Sun, 14 Jun 2015 17:28:24 +0000 (11:28 -0600)]
layers: Set helpers as static inline

static inline allows the code to be unused

9 years agolayers: make log_msg format log strings for perf
Courtney Goeltzenleuchter [Sun, 14 Jun 2015 15:50:18 +0000 (09:50 -0600)]
layers: make log_msg format log strings for perf

Performance analysis showed a lot of time being spent
formating unused log messages (particularly INFO). By
moving the formatting into the logging function we can
only do the formatting if the message will be used.

9 years agolayers: Ifdef out debug code
Courtney Goeltzenleuchter [Sun, 14 Jun 2015 03:48:26 +0000 (21:48 -0600)]
layers: Ifdef out debug code

9 years agomem_tracker: Add some more debug code
Courtney Goeltzenleuchter [Sun, 14 Jun 2015 03:40:22 +0000 (21:40 -0600)]
mem_tracker: Add some more debug code

9 years agomem_tracker: Use dispatch access functions
Courtney Goeltzenleuchter [Sun, 14 Jun 2015 03:39:35 +0000 (21:39 -0600)]
mem_tracker: Use dispatch access functions

Hopefully makes code easier to read when using the
dispatch table access functions.

9 years agomem_tracker: Need dispatch object for logging
Courtney Goeltzenleuchter [Sun, 14 Jun 2015 03:37:34 +0000 (21:37 -0600)]
mem_tracker: Need dispatch object for logging

Needed to make sure we had a dispatchable object to
perform logging. Can't trust that mem or object are
correct, so have caller pass in user's dispatchable object.

9 years agomem_tracker: Add debug asserts
Courtney Goeltzenleuchter [Sun, 14 Jun 2015 03:36:49 +0000 (21:36 -0600)]
mem_tracker: Add debug asserts

9 years agomem_tracker: Initialize new mem record
Courtney Goeltzenleuchter [Sun, 14 Jun 2015 03:29:26 +0000 (21:29 -0600)]
mem_tracker: Initialize new mem record

Need to intialize the record put on the list.
Removed the unused, newed record.

9 years agodraw_state: Update to use private dispatch map
Courtney Goeltzenleuchter [Sun, 14 Jun 2015 03:23:09 +0000 (21:23 -0600)]
draw_state: Update to use private dispatch map

9 years agolayers: Use static dispatch table maps
Courtney Goeltzenleuchter [Sun, 14 Jun 2015 03:22:12 +0000 (21:22 -0600)]
layers: Use static dispatch table maps

Changes to use dispatch table access functions.

9 years agolayers: utilities for layer storage
Courtney Goeltzenleuchter [Sun, 14 Jun 2015 03:18:30 +0000 (21:18 -0600)]
layers: utilities for layer storage

Have defined tableMap and tableInstanceMap as
static here to prevent layers from accidentally using
a common map. Moved all the access functions here as well
to be able to access the static maps.
Added destroy functions to eliminate last of references
to tableMap and tableInstanceMap maps outside this file.

9 years agolayers: per-instance data helpers
Courtney Goeltzenleuchter [Sat, 13 Jun 2015 17:18:17 +0000 (11:18 -0600)]
layers: per-instance data helpers

9 years agomem_tracker: add per-instance persistent data
Courtney Goeltzenleuchter [Sun, 14 Jun 2015 18:03:26 +0000 (12:03 -0600)]
mem_tracker: add per-instance persistent data

9 years agoloader: Set some log messages as debug messages
Courtney Goeltzenleuchter [Sun, 14 Jun 2015 17:59:07 +0000 (11:59 -0600)]
loader: Set some log messages as debug messages

9 years agomemtracker: Add persistent storage
Courtney Goeltzenleuchter [Thu, 11 Jun 2015 22:01:11 +0000 (16:01 -0600)]
memtracker: Add persistent storage

This patch eliminates global variables and accesses
everything through pre-instance or per-device storage.

Have basic template supporting get_my_data_ptr function working.

9 years agodebug_report: Utilities for layers to use
Courtney Goeltzenleuchter [Thu, 11 Jun 2015 21:58:51 +0000 (15:58 -0600)]
debug_report: Utilities for layers to use

This header is intended to be used by all validation
layers and provides the necessary functions to process
DEBUG_REPORT messages and generate callbacks.
This is intended for layers implementing per instance / device
storage.

9 years agodebug_report: Add error codes
Courtney Goeltzenleuchter [Thu, 11 Jun 2015 21:56:14 +0000 (15:56 -0600)]
debug_report: Add error codes

Add error codes for messages the debug report layer
can generate.

9 years agoloader: Fix device layer activation to properly filter out repeat layers
Jon Ashburn [Tue, 9 Jun 2015 17:27:20 +0000 (11:27 -0600)]
loader: Fix device layer activation to properly filter out repeat layers

9 years agoloader: Move device dispatch table to CreateDevice from EnumeratePhysDev
Jon Ashburn [Mon, 8 Jun 2015 22:38:48 +0000 (16:38 -0600)]
loader: Move device dispatch table to CreateDevice from EnumeratePhysDev

For now just have a static array for these will fix this in later commit

Conflicts:
loader/loader.c

9 years agoloader: Remove GetGlobalExtensionInfo from dispatch table
Jon Ashburn [Mon, 8 Jun 2015 20:38:28 +0000 (14:38 -0600)]
loader: Remove GetGlobalExtensionInfo from dispatch table

No way to reliably dispatch this entry point in layers; will not be recursive.

Conflicts:
loader/loader.c

9 years agoloader: Remove linefeed from log messages
Courtney Goeltzenleuchter [Tue, 9 Jun 2015 15:44:13 +0000 (09:44 -0600)]
loader: Remove linefeed from log messages

The output function already puts in linefeeds.

9 years agoloader: Use type flags not code for filter
Courtney Goeltzenleuchter [Tue, 9 Jun 2015 15:42:23 +0000 (09:42 -0600)]
loader: Use type flags not code for filter

9 years agoloader: clean up dead code
Courtney Goeltzenleuchter [Tue, 9 Jun 2015 15:15:40 +0000 (09:15 -0600)]
loader: clean up dead code

9 years agoloader: only search for layers
Courtney Goeltzenleuchter [Tue, 9 Jun 2015 15:14:48 +0000 (09:14 -0600)]
loader: only search for layers

9 years agoloader: remove now unused hosted field
Courtney Goeltzenleuchter [Tue, 9 Jun 2015 15:08:54 +0000 (09:08 -0600)]
loader: remove now unused hosted field

9 years agobug-13466: Implement comment #14
Courtney Goeltzenleuchter [Tue, 9 Jun 2015 14:45:23 +0000 (08:45 -0600)]
bug-13466: Implement comment #14

https://cvs.khronos.org/bugzilla/show_bug.cgi?id=13466

9 years agoloader: Add error messages if layer libraries fail to load
Jon Ashburn [Thu, 4 Jun 2015 21:30:58 +0000 (15:30 -0600)]
loader: Add error messages if layer libraries fail to load

9 years agolayers: Make dispatch table thread safe
Jon Ashburn [Mon, 1 Jun 2015 16:02:09 +0000 (10:02 -0600)]
layers: Make dispatch table thread safe

9 years agolayers: Fix DrawState and ParamChecker to only use debug_marker if enabled
Jon Ashburn [Mon, 1 Jun 2015 15:37:38 +0000 (09:37 -0600)]
layers: Fix DrawState and ParamChecker to only use debug_marker if enabled

9 years agoloader: Make global functions (instance chain entrypoints) thread safe
Jon Ashburn [Fri, 29 May 2015 19:15:39 +0000 (13:15 -0600)]
loader: Make global functions (instance chain entrypoints) thread safe

9 years agolayer: Remove EnumerateLayers
Jon Ashburn [Fri, 29 May 2015 15:12:28 +0000 (09:12 -0600)]
layer: Remove EnumerateLayers

9 years agoloader: Remove storage of wrappedGPUs only need during layer activation
Jon Ashburn [Fri, 29 May 2015 01:25:20 +0000 (19:25 -0600)]
loader: Remove storage of wrappedGPUs only need during layer activation

9 years agoloader: add debug log message
Courtney Goeltzenleuchter [Mon, 8 Jun 2015 21:13:50 +0000 (15:13 -0600)]
loader: add debug log message

9 years agoloader: Add LOADER_DEBUG environment flags
Courtney Goeltzenleuchter [Mon, 8 Jun 2015 21:11:18 +0000 (15:11 -0600)]
loader: Add LOADER_DEBUG environment flags

The loader_log function now uses a global flag to
determine which log messages to echo to stderr.
The flags can be set by setting the LOADER_DEBUG
environment variable to colon separate list of
tokens.

9 years agoloader: Fix DestroyInstance
Courtney Goeltzenleuchter [Mon, 8 Jun 2015 21:09:22 +0000 (15:09 -0600)]
loader: Fix DestroyInstance

9 years agoloader: Add utility to return loader instance ptr
Courtney Goeltzenleuchter [Mon, 8 Jun 2015 21:04:02 +0000 (15:04 -0600)]
loader: Add utility to return loader instance ptr

9 years agolayers: Initialize debug_report instance proc table
Courtney Goeltzenleuchter [Mon, 8 Jun 2015 20:58:39 +0000 (14:58 -0600)]
layers: Initialize debug_report instance proc table

9 years agoloader: Increase library name length for safety
Courtney Goeltzenleuchter [Mon, 8 Jun 2015 00:24:30 +0000 (18:24 -0600)]
loader: Increase library name length for safety

9 years agoloader: Fix EnumeratePhysDev to handle less gpus than icd has and no mem leak
Jon Ashburn [Fri, 29 May 2015 01:16:58 +0000 (19:16 -0600)]
loader: Fix EnumeratePhysDev to handle less gpus than icd has and no mem leak

Also no longer wrap gpu objs of inst objs in CreateInstance.

9 years agoloader: Only allow layer in chain once
Courtney Goeltzenleuchter [Sun, 7 Jun 2015 23:28:17 +0000 (17:28 -0600)]
loader: Only allow layer in chain once

If an application were to specify a "Validatio" layer
and the environment specified a ParamChecker layer
it was possible to load the same layer twice in
one chain. Layers don't like that can only be referenced
once and that's all they need to support multiple
extensions from the one layer.
This patch adds an alias pointer so that when putting
together the lists of available extensions the loader
can keep track of multiple extensions that are servied
by the same library. Also now create specific
activated_layers_list that contains only the list
of layers that need to be activated.

9 years agodebug_report: Add debug message flag
Courtney Goeltzenleuchter [Sun, 7 Jun 2015 23:27:46 +0000 (17:27 -0600)]
debug_report: Add debug message flag

9 years agoloader: Remove obsolete extension / layer code
Courtney Goeltzenleuchter [Sun, 7 Jun 2015 23:27:05 +0000 (17:27 -0600)]
loader: Remove obsolete extension / layer code

9 years agolayer: Generic is not a validation layer
Courtney Goeltzenleuchter [Sun, 7 Jun 2015 23:24:20 +0000 (17:24 -0600)]
layer: Generic is not a validation layer

Remove the Validation extension definition for the
generated generic example layer.

9 years agovulkaninfo: Update to new extension mechanism
Courtney Goeltzenleuchter [Thu, 4 Jun 2015 22:20:06 +0000 (16:20 -0600)]
vulkaninfo: Update to new extension mechanism

9 years agovulkan: Fix for bug 13785.
Courtney Goeltzenleuchter [Thu, 4 Jun 2015 17:35:43 +0000 (11:35 -0600)]
vulkan: Fix for bug 13785.

Implement proposal in comment #3.
Agreed in June '15 Khronos face-to-face

9 years agonulldriver: Update to new VkExtensionProperties
Courtney Goeltzenleuchter [Mon, 1 Jun 2015 21:10:03 +0000 (15:10 -0600)]
nulldriver: Update to new VkExtensionProperties

9 years agolayers: Update generator for DEBUG_REPORT
Courtney Goeltzenleuchter [Mon, 1 Jun 2015 20:52:57 +0000 (14:52 -0600)]
layers: Update generator for DEBUG_REPORT

Generated layers that support DEBUG_REPORT
now need to intercept CreateInstance and call the
appropriate DEBUG_REPORT layer helper functions.

9 years agoloader: Fix code format, add some debug info
Courtney Goeltzenleuchter [Mon, 1 Jun 2015 20:49:17 +0000 (14:49 -0600)]
loader: Fix code format, add some debug info

9 years agoshader_checker: Use DEBUG_REPORT helper functions
Courtney Goeltzenleuchter [Mon, 1 Jun 2015 20:46:33 +0000 (14:46 -0600)]
shader_checker: Use DEBUG_REPORT helper functions

Include and use DEBUG_REPORT layer helper functions
for create, destroy and GetInstanceProcAddr.

9 years agoparam_checker: Use DEBUG_REPORT extension helpers
Courtney Goeltzenleuchter [Mon, 1 Jun 2015 20:45:27 +0000 (14:45 -0600)]
param_checker: Use DEBUG_REPORT extension helpers

9 years agomem_tracker: DEBUG_REPORT handled by helper functions
Courtney Goeltzenleuchter [Mon, 1 Jun 2015 20:43:18 +0000 (14:43 -0600)]
mem_tracker: DEBUG_REPORT handled by helper functions

9 years agomem_tracker: DEBUG_REPORT is global, do not use in CreateDevice
Courtney Goeltzenleuchter [Mon, 1 Jun 2015 20:42:43 +0000 (14:42 -0600)]
mem_tracker: DEBUG_REPORT is global, do not use in CreateDevice

9 years agomem_tracker: Updates to match latest loader changes
Courtney Goeltzenleuchter [Mon, 1 Jun 2015 20:41:49 +0000 (14:41 -0600)]
mem_tracker: Updates to match latest loader changes

9 years agodraw_state: Add validation extension record
Courtney Goeltzenleuchter [Mon, 1 Jun 2015 20:34:25 +0000 (14:34 -0600)]
draw_state: Add validation extension record

To make things easier for applications the validation
layers will advertise support for two extensions.
The named extension (i.e. DRAW_STATE) is used if the
app only wants to enable this specific layer / extension.
If an app wants to enable all Validation layers they
simply include all VkExtensionProperties who's name is
"Validation". This patch adds this extension to this
layer.

9 years agodraw_state: Add support for DEBUG_REPORT
Courtney Goeltzenleuchter [Mon, 1 Jun 2015 20:33:14 +0000 (14:33 -0600)]
draw_state: Add support for DEBUG_REPORT

DrawState can report errors it details via the
DEBUG_REPORT extension. This patch updates
DrawState so that it uses the DEBUG_REPORT
extension if it is enabled.

9 years agodraw_state: Add CreateInstance support
Courtney Goeltzenleuchter [Mon, 1 Jun 2015 20:29:58 +0000 (14:29 -0600)]
draw_state: Add CreateInstance support

Layers need to intercept CreateInstance in order
to see what's been enabled on the Instance chain.
As this layer supports DEBUG_REPORT extension it
needs to know if that has been enabled or not.

9 years agoloader: remove dependency fields from extension info
Courtney Goeltzenleuchter [Mon, 1 Jun 2015 20:25:09 +0000 (14:25 -0600)]
loader: remove dependency fields from extension info

9 years agoloader: Remove resolved TODOs
Courtney Goeltzenleuchter [Mon, 1 Jun 2015 20:12:42 +0000 (14:12 -0600)]
loader: Remove resolved TODOs

Update comments and remove TODOs that are done.

9 years agoloader: Remove unused functions
Courtney Goeltzenleuchter [Mon, 1 Jun 2015 20:10:21 +0000 (14:10 -0600)]
loader: Remove unused functions

Now that we are using the full VkExtensionProperties
structure to designate extensions needed new query functions