platform/upstream/Vulkan-Tools.git
9 years agomisc: Add create_info struct to CreateInstance()
Jon Ashburn [Sat, 4 Apr 2015 20:52:07 +0000 (14:52 -0600)]
misc: Add create_info struct to CreateInstance()

Allows extnesion or layer enablement at CreateInstance
Khronos Bug 13637

9 years agolayers: Update GetExtensionSupport() to handle queries for layer name
Jon Ashburn [Thu, 2 Apr 2015 18:06:28 +0000 (12:06 -0600)]
layers: Update GetExtensionSupport() to handle queries for layer name

Layers now support loader querying their layer name via GetExtensionSupport
in addition to EnumerateLayers.
Also fixed bugs in ObjectTracker and DrawState to add the extensions they
support in the GetExtensionSupport queries.

Conflicts:
xgl-layer-generate.py

9 years agoloader: Merge extensions and layers
Courtney Goeltzenleuchter [Fri, 27 Feb 2015 22:19:33 +0000 (15:19 -0700)]
loader: Merge extensions and layers

Update loader so that it extensions and layers work in same
basic fashion. That is, application can query for extension/layer
support by calling GetExtensionSupport. The loader will then query
the available drivers AND layers for that support. Likewise,
when the application does CreateDevice the list of "extensions"
can be both layers and extensions and the loader will figure out
the right thing to do.

Conflicts:
loader/loader.c
xgl-generate.py

9 years agolayers: Set default debug output to stdout
Courtney Goeltzenleuchter [Sun, 22 Feb 2015 23:15:32 +0000 (16:15 -0700)]
layers: Set default debug output to stdout

9 years agoUpdated header file to version 67 (xglResetFences)
Mark Lobodzinski [Tue, 7 Apr 2015 21:07:57 +0000 (16:07 -0500)]
Updated header file to version 67 (xglResetFences)

Added changes to fence semantics for this revision.

tests: Create contructor with no args

intel: Added Tony's patch for ResetFences support in the ICD.

v2: reset fence in intel_fence_seq_seqno().  We need the reset to make
    xglQueueWaitIdle() work (olv)

layers: Added ResetFences support to MemTracker

Add new entrypoint and fence semantics for fence status flags.

layers: Completed changed fence semantics for MemTracker

Completed the changes for xgl header revision 67, adding resetFences.

layers: Changes to support xglResetFences

v2: squashed into one commit (olv)

9 years agolayers: Incorporated memory reference handling into MemTracker
Mark Lobodzinski [Tue, 7 Apr 2015 18:38:21 +0000 (13:38 -0500)]
layers: Incorporated memory reference handling into MemTracker

API was changed for handling memory references, updated memtracker
layer to correctly track and validate memory references.

9 years agolayers: Fixes to get them building and working with descriptor changes
Mark Lobodzinski [Tue, 7 Apr 2015 14:34:09 +0000 (09:34 -0500)]
layers: Fixes to get them building and working with descriptor changes

9 years agolayers: Updated for explicit fence validation with multiple queues
Courtney Goeltzenleuchter [Tue, 14 Apr 2015 06:01:21 +0000 (00:01 -0600)]
layers: Updated for explicit fence validation with multiple queues

Fences were being validated to make sure they had been retired, layer
was updated to validate that the app has checked the fences.

9 years agolayers: Added support for multiple queues
Mark Lobodzinski [Thu, 2 Apr 2015 13:52:53 +0000 (08:52 -0500)]
layers: Added support for multiple queues

Not supported on Intel, but will be on other hw.

9 years agolayers: Added GetDeviceQueue API, fixed up variable names
Mark Lobodzinski [Tue, 31 Mar 2015 21:05:35 +0000 (16:05 -0500)]
layers: Added GetDeviceQueue API, fixed up variable names

Updated LinkedList-related variable names

Conflicts:
layers/mem_tracker.cpp

9 years agoxgl: Enable new mem ref functions
Courtney Goeltzenleuchter [Tue, 7 Apr 2015 23:13:38 +0000 (17:13 -0600)]
xgl: Enable new mem ref functions

v2: remove a stale comment in the sample driver (olv)

9 years agotri: Add AddMemRef support
Courtney Goeltzenleuchter [Thu, 2 Apr 2015 22:30:29 +0000 (16:30 -0600)]
tri: Add AddMemRef support

9 years agocube: Add AddMemReferences
Courtney Goeltzenleuchter [Thu, 2 Apr 2015 22:25:42 +0000 (16:25 -0600)]
cube: Add AddMemReferences

9 years agoxgl: Remove QueueSetGlobalMemReferences
Courtney Goeltzenleuchter [Tue, 7 Apr 2015 22:40:50 +0000 (16:40 -0600)]
xgl: Remove QueueSetGlobalMemReferences

9 years agoxgl: Remove old GPU maxMemReferencesPerSubmission
Courtney Goeltzenleuchter [Tue, 7 Apr 2015 22:23:00 +0000 (16:23 -0600)]
xgl: Remove old GPU maxMemReferencesPerSubmission

The GPU property maxMemReferencesPerSubmission is now
in the GPU QUEUE properties as maxMemReferences.

9 years agoxgl: Add MaxMemReferences to GPU_QUEUE_PROPS
Courtney Goeltzenleuchter [Thu, 2 Apr 2015 20:22:12 +0000 (14:22 -0600)]
xgl: Add MaxMemReferences to GPU_QUEUE_PROPS

9 years agoxgl: Add QueueMemReference functions
Courtney Goeltzenleuchter [Thu, 2 Apr 2015 19:39:07 +0000 (13:39 -0600)]
xgl: Add QueueMemReference functions

9 years agolayers: Fix multi-line strings.
Jeremy Hayes [Tue, 7 Apr 2015 19:38:03 +0000 (13:38 -0600)]
layers: Fix multi-line strings.

9 years agolayers: Improve xglCreateInstance validation.
Jeremy Hayes [Tue, 7 Apr 2015 19:30:04 +0000 (13:30 -0600)]
layers: Improve xglCreateInstance validation.

9 years agolayers: Improve xglCreateRenderPass validation.
Jeremy Hayes [Tue, 7 Apr 2015 15:49:05 +0000 (09:49 -0600)]
layers: Improve xglCreateRenderPass validation.

9 years agolayers: move APIDump layers to generate_intercept
Mike Stroyan [Fri, 3 Apr 2015 23:45:53 +0000 (17:45 -0600)]
layers: move APIDump layers to generate_intercept

Finish moving the rest of layer generation to using generate_intercept.
Make APIDump variants for File and NoAddr subclasses of APIDump and APIDumpCpp.

9 years agolayers: use class attributes in code generation
Mike Stroyan [Fri, 3 Apr 2015 23:13:23 +0000 (17:13 -0600)]
layers: use class attributes in code generation

Move layer_name from parameters to class attribute.
Move no_addr setting from parameters to class attribute.
Access generate_intercept method through class instead of parameter.

9 years agolayers: update ObjectTracker code generation
Mike Stroyan [Fri, 3 Apr 2015 20:39:16 +0000 (14:39 -0600)]
layers: update ObjectTracker code generation

Change ObjectTracker generation to use _generate_dispatch_entrypoints_with_func

9 years agolayers: restructure code generation for layers
Mike Stroyan [Fri, 3 Apr 2015 19:58:35 +0000 (13:58 -0600)]
layers: restructure code generation for layers

Changed _generate_dispatch_entrypoints in xgl-layer-generate.py
to remove specific layer handling.
Instead pass it a "generate_intercept" function to decide which
API calls to intercept and output layer specific intercept code.
Output layer_intercept_proc() function per layer instead of using
xgl_generic_intercept_proc_helper.h so intercept lists can vary
for different generated layers.

9 years agolayers: more uniform generated layer callbacks
Mike Stroyan [Thu, 2 Apr 2015 19:38:55 +0000 (13:38 -0600)]
layers: more uniform generated layer callbacks

Make the code to generate DbgRegisterMsgCallback and
DbgUnregisterMsgCallback in _generate_dispatch_entrypoints
more uniform across layers.
This also fixes the ObjectTracker layer to pass on these calls
to the next layer or icd.

9 years agolayers: drop ParamCheck from generator script
Mike Stroyan [Mon, 6 Apr 2015 21:24:46 +0000 (15:24 -0600)]
layers: drop ParamCheck from generator script

ParamChecker is no longer generated by xgl-layer-generate.py

9 years agolayers: Improve CreateImage checks.
Jeremy Hayes [Mon, 6 Apr 2015 20:36:23 +0000 (14:36 -0600)]
layers: Improve CreateImage checks.

9 years agolayers: Remove param checker from auto-gen.
Jeremy Hayes [Mon, 6 Apr 2015 19:46:11 +0000 (13:46 -0600)]
layers: Remove param checker from auto-gen.

9 years agolayers: Use brackets for if in previous fix
Tony Barbour [Mon, 6 Apr 2015 17:09:26 +0000 (11:09 -0600)]
layers: Use brackets for if in previous fix

9 years agolayers: Check for valid pipeline before validating
Tony Barbour [Mon, 6 Apr 2015 17:00:38 +0000 (11:00 -0600)]
layers: Check for valid pipeline before validating

9 years agoinclude: Add vk_dbg.h for the Dbg extension definitions
Jon Ashburn [Sat, 4 Apr 2015 18:13:28 +0000 (12:13 -0600)]
include: Add vk_dbg.h for the Dbg extension definitions

9 years agoWSI fixes (Jon caught): new disp-obj macro + extend VkObjectType.
Ian Elliott [Tue, 7 Apr 2015 19:50:42 +0000 (13:50 -0600)]
WSI fixes (Jon caught): new disp-obj macro + extend VkObjectType.

A recent "vulkan.h" header change means we should use the
VK_DEFINE_DISP_SUBCLASS_HANDLE() macor instead of the VK_DEFINE_HANDLE() macro.

Also, we needed to extend the VkObjectType enum/typedef.

9 years agoAdd WSI header file, for use in the SDK.
Ian Elliott [Fri, 3 Apr 2015 15:45:49 +0000 (09:45 -0600)]
Add WSI header file, for use in the SDK.

9 years agobuild: enable Glave and all layers but drawState
Jon Ashburn [Wed, 1 Apr 2015 19:30:06 +0000 (13:30 -0600)]
build: enable Glave and all layers but drawState

v2: enable drawState too (olv)

9 years agolayers: DrawState changes to support resource binding updates
Tobin Ehlis [Fri, 3 Apr 2015 18:01:11 +0000 (12:01 -0600)]
layers: DrawState changes to support resource binding updates

9 years agolayers: Fixes to get them building and working with descriptor changes
Courtney Goeltzenleuchter [Fri, 3 Apr 2015 04:54:15 +0000 (22:54 -0600)]
layers: Fixes to get them building and working with descriptor changes

9 years agoglave: Rename descriptor region to descriptor pool
Jon Ashburn [Mon, 30 Mar 2015 15:11:02 +0000 (09:11 -0600)]
glave: Rename descriptor region to descriptor pool

9 years agobinding: update for xglCmdBindDescriptorSets()
Chia-I Wu [Sat, 28 Mar 2015 07:23:55 +0000 (15:23 +0800)]
binding: update for xglCmdBindDescriptorSets()

This update makes it possible to bind multiple descriptor sets to the command
buffer.  We introduced intel_cmd_dset_data to hold the descriptor set offsets
in the global descriptor region as well as their dynamic offsets.  We also
changed the descriptor reading routines from

  intel_desc_set_read_surface()
  intel_desc_set_read_sampler()

to

  intel_desc_region_read_surface()
  intel_desc_region_read_sampler()

v2: fix a potential crash when allocation of dynamic_desc_indices fails

9 years agobinding: update for pImmutableSamplers
Chia-I Wu [Fri, 27 Mar 2015 04:56:09 +0000 (12:56 +0800)]
binding: update for pImmutableSamplers

v2: fix a typo in the type of shared_immutable_sampler (olv)

9 years agobinding: introduce XGL_DESCRIPTOR_SET_LAYOUT_CHAIN
Chia-I Wu [Thu, 26 Mar 2015 07:27:55 +0000 (15:27 +0800)]
binding: introduce XGL_DESCRIPTOR_SET_LAYOUT_CHAIN

Replace a chain of XGL_DESCRIPTOR_SET_LAYOUT by
XGL_DESCRIPTOR_SET_LAYOUT_CHAIN.  The change also drops
stageFlags/pSetBindPoints, and affects xglUpdateDescriptors().

xglCmdBindDescriptorSet() is not updated yet by this commit, which makes it
impossible to bind multiple sets.

The change also encourages the use of arrays of resources, which we do not
support.

v2: fix a typo in intel_desc_set_update_samplers() that prevents it from
working (olv)

9 years agobinding: remove XGL_DESCRIPTOR_TYPE_RAW_BUFFER*
Chia-I Wu [Thu, 26 Mar 2015 07:26:05 +0000 (15:26 +0800)]
binding: remove XGL_DESCRIPTOR_TYPE_RAW_BUFFER*

9 years agobinding: rename xglClearDescriptorPool()
Chia-I Wu [Thu, 26 Mar 2015 07:23:52 +0000 (15:23 +0800)]
binding: rename xglClearDescriptorPool()

Rename it to xglResetDescriptorPool().

9 years agobinding: update XGL_DESCRIPTOR_SET_LAYOUT_CREATE_INFO
Chia-I Wu [Thu, 26 Mar 2015 07:04:41 +0000 (15:04 +0800)]
binding: update XGL_DESCRIPTOR_SET_LAYOUT_CREATE_INFO

XGL_DESCRIPTOR_SET_LAYOUT_CREATE_INFO now has an array of bindings.  Rename
intel_desc_layout_range to intel_desc_layout_binding.

9 years agobinding: rename descriptor region to descriptor pool
Chia-I Wu [Thu, 26 Mar 2015 05:14:16 +0000 (13:14 +0800)]
binding: rename descriptor region to descriptor pool

This should be trivial, except that the intel driver has intel_desc_pool
internally.  Exchange the names of intel_desc_pool and intel_desc_region.

9 years agobinding: disable layers and tools
Chia-I Wu [Sat, 28 Mar 2015 01:59:21 +0000 (09:59 +0800)]
binding: disable layers and tools

9 years agolayers: Correct xglBindObjectMemory signature in MemTracker message.
Tobin Ehlis [Thu, 26 Mar 2015 14:24:16 +0000 (08:24 -0600)]
layers: Correct xglBindObjectMemory signature in MemTracker message.

9 years agolayers: Migrated DrawState layer to cpp
Tobin Ehlis [Tue, 17 Mar 2015 22:24:32 +0000 (16:24 -0600)]
layers: Migrated DrawState layer to cpp

Move almost all linked-lists to unordered_maps and vectors.
Clean up malloc/free with new/delete.
Skip write-strings compile warnings for graphviz_helper.

Still need to migrate the DS update tree to c++.

9 years agolayers: Convert memtracker to cpp
Mark Lobodzinski [Tue, 24 Mar 2015 21:29:24 +0000 (16:29 -0500)]
layers: Convert memtracker to cpp

Take advantage of containers, memory allocation, and strings.

9 years agoxgl: Update interface for sparse vertex attrs
Courtney Goeltzenleuchter [Tue, 31 Mar 2015 22:36:30 +0000 (16:36 -0600)]
xgl: Update interface for sparse vertex attrs

Bug #13402
header version: 0.64.0

9 years agoEliminate some Windows-compilation warnings.
Ian Elliott [Fri, 3 Apr 2015 15:54:13 +0000 (09:54 -0600)]
Eliminate some Windows-compilation warnings.

9 years agoobj_track: Eliminate warning for presentable image
Courtney Goeltzenleuchter [Thu, 26 Mar 2015 22:16:16 +0000 (16:16 -0600)]
obj_track: Eliminate warning for presentable image

Distinguish between freeObj calls that are being done for
layer internal reasons (i.e. tracking presentable_image objects)
and user actions to eliminate unnecessary warning from layer.

9 years agomem_tracker: Report PRESENTABLE_IMAGE_MEMORY obj
Courtney Goeltzenleuchter [Thu, 26 Mar 2015 22:15:39 +0000 (16:15 -0600)]
mem_tracker: Report PRESENTABLE_IMAGE_MEMORY obj

9 years agodemos: Correct use of pipeline barrier
Courtney Goeltzenleuchter [Wed, 25 Mar 2015 19:36:41 +0000 (13:36 -0600)]
demos:  Correct use of pipeline barrier

9 years agoxgl: Rename XGL_QUEUE_SEMAPHORE to XGL_SEMAPHORE
Courtney Goeltzenleuchter [Wed, 25 Mar 2015 23:14:29 +0000 (17:14 -0600)]
xgl: Rename XGL_QUEUE_SEMAPHORE to XGL_SEMAPHORE

bug #13473
header: r29790 (0.63.0)

9 years agoxgl: xglWaitForFences timeout units
Courtney Goeltzenleuchter [Wed, 25 Mar 2015 22:37:00 +0000 (16:37 -0600)]
xgl: xglWaitForFences timeout units

bug #13425
header: r29769 (0.62.0)

v2: cast uint64_t to int64_t with range check (olv)

9 years agoxgl: Consistent naming scheme for resources in XGL
Courtney Goeltzenleuchter [Wed, 25 Mar 2015 22:31:58 +0000 (16:31 -0600)]
xgl: Consistent naming scheme for resources in XGL

bug #13230
header revision: r29764 (0.62.0)

Part 1: Change BUFFER_USAGE, BUFFER_VIEW and BUFFER_VIEW_CREATE_INFO.

9 years agoxgl: Remove xglSetFastClearColor / xglSetFastClearDepth
Courtney Goeltzenleuchter [Mon, 13 Apr 2015 22:13:30 +0000 (16:13 -0600)]
xgl: Remove xglSetFastClearColor / xglSetFastClearDepth

header: r29714 (0.61.0)

9 years agoFIXUP: Remove PIPELINE_DELTA
Courtney Goeltzenleuchter [Mon, 13 Apr 2015 22:16:04 +0000 (16:16 -0600)]
FIXUP: Remove PIPELINE_DELTA

commit 57a757fda4f6a62cb1187b015f28119ce9c5a2b2
Author: Courtney Goeltzenleuchter <courtney@LunarG.com>
Date:   Wed Mar 25 15:37:49 2015 -0600

    xgl: Remove PIPELINE_DELTA.

    bug: 13065
    header: 0.60.0

    Remove PIPELINE_DELTA.

    Add functions for creating and loading pipeline derivatives.

9 years agoxgl: Remove PIPELINE_DELTA.
Courtney Goeltzenleuchter [Wed, 25 Mar 2015 21:37:49 +0000 (15:37 -0600)]
xgl: Remove PIPELINE_DELTA.

bug: 13065
header: 0.60.0

Remove PIPELINE_DELTA.

Add functions for creating and loading pipeline derivatives.

v2: fix warnings (olv)

9 years agoFIXUP: Add IMAGE_LAYOUT
Courtney Goeltzenleuchter [Mon, 13 Apr 2015 22:16:56 +0000 (16:16 -0600)]
FIXUP: Add IMAGE_LAYOUT

commit 6f5bca9057be71e818982c4cece0cb5ed1743b0f
Author: Courtney Goeltzenleuchter <courtney@LunarG.com>
Date:   Wed Mar 25 11:25:10 2015 -0600

    xgl: Add IMAGE_LAYOUT to Cmd*Image* calls

    This is part 2 of bug #12904.
    (2) Blit operations need to know what layout images are in. How do they figure that out?

    - Added new parameter(s) specifying the image layout(s) to the following functions:
        xglCmdCopyImage
        xglCmdCopyBufferToImage
        xglCmdCopyImageToBuffer
        xglCmdClearColorImage
        xglCmdClearColorImageRaw
        xglCmdClearDepthStencilImage
        xglCmdResolveImage

9 years agoxgl: Add IMAGE_LAYOUT to Cmd*Image* calls
Courtney Goeltzenleuchter [Wed, 25 Mar 2015 17:25:10 +0000 (11:25 -0600)]
xgl: Add IMAGE_LAYOUT to Cmd*Image* calls

This is part 2 of bug #12904.
(2) Blit operations need to know what layout images are in. How do they figure that out?

- Added new parameter(s) specifying the image layout(s) to the following functions:
    xglCmdCopyImage
    xglCmdCopyBufferToImage
    xglCmdCopyImageToBuffer
    xglCmdClearColorImage
    xglCmdClearColorImageRaw
    xglCmdClearDepthStencilImage
    xglCmdResolveImage

9 years agoxgl: Add IMAGE_LAYOUT to Cmd*Image* calls
Courtney Goeltzenleuchter [Wed, 25 Mar 2015 17:25:10 +0000 (11:25 -0600)]
xgl: Add IMAGE_LAYOUT to Cmd*Image* calls

This is part 2 of bug #12904.
(2) Blit operations need to know what layout images are in. How do they figure that out?

- Added new parameter(s) specifying the image layout(s) to the following functions:
    xglCmdCopyImage
    xglCmdCopyBufferToImage
    xglCmdCopyImageToBuffer
    xglCmdClearColorImage
    xglCmdClearColorImageRaw
    xglCmdClearDepthStencilImage
    xglCmdResolveImage

9 years agoxgl: Add xglCmdBlitImage entry point
Courtney Goeltzenleuchter [Fri, 3 Apr 2015 20:42:51 +0000 (14:42 -0600)]
xgl: Add xglCmdBlitImage entry point

Rebase updates
Part one of adding support for abitrary scaled blits and format conversions.
Just interface here. Functionality to follow.
bug #13071
alpha rev: r29665

9 years agoxgl: Add IMAGE_LAYOUT_UNDEFINED
Courtney Goeltzenleuchter [Wed, 25 Mar 2015 14:49:17 +0000 (08:49 -0600)]
xgl: Add IMAGE_LAYOUT_UNDEFINED

part 1 of bug #12904:
(1) What layout are images in when they are created?

- Added new XGL_IMAGE_LAYOUT_UNINITIALIZED constant. This is the layout images are in right after creation. The application has to transition images to some useable layout before using the image. It can only be used as the source layout of a resource transition.

An image is considered to have UNDEFINED layout in the following cases:
* right after creation
* if the contents of the memory backing the image has been changed by performing an operation on another resource which (partially or fully) shares the same memory backing

The content of an image that is in UNDEFINED layout is considered undefined and unless the image is transitioned to another layout any operation on the image results in the content of the image to stay undefined.

The application can transition any image from UNDEFINED layout to another layout anytime. Right after that the content of the image still remains undefined but subsequent operations performed on the image (e.g. clear) will have well defined results.

9 years agoxgl: Add XGL_PIPE_EVENT to CmdResetEvent
Courtney Goeltzenleuchter [Wed, 25 Mar 2015 00:02:34 +0000 (18:02 -0600)]
xgl: Add XGL_PIPE_EVENT to CmdResetEvent

part 3 of bug #12904
alpha header: r29684 (0.59.0)

(3) Where does xglCmdResetEvent update the event's status? Unlike xglCmdSetEvent this function doesn't take a parameter specifying this.

- Added pipeEvent parameter also to xglCmdResetEvent. Also renamed XGL_SET_EVENT to XGL_PIPE_EVENT as now it's no longer used only for set operations.

9 years agoxgl: Added XGL_IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT
Courtney Goeltzenleuchter [Mon, 9 Mar 2015 01:41:29 +0000 (19:41 -0600)]
xgl: Added XGL_IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT

bug #13066
alpha header: r29666

Currently not using this bit in sample driver.

9 years agoxgl: Add xglCmdBlitImage entry point
Courtney Goeltzenleuchter [Sun, 8 Mar 2015 23:02:18 +0000 (17:02 -0600)]
xgl: Add xglCmdBlitImage entry point

Part one of adding support for abitrary scaled blits and format conversions.
Just interface here. Functionality to follow.
bug #13071
alpha rev: r29665

9 years agoxgl: Proposal to remove XGL_FRAMEBUFFER
Courtney Goeltzenleuchter [Fri, 3 Apr 2015 21:25:24 +0000 (15:25 -0600)]
xgl: Proposal to remove XGL_FRAMEBUFFER

bug # 13323
alpha header: r29635

Don't actually remove XGL_FRAMEBUFFER but do change how
RenderPass and Framebuffer are connected. Some comments
from the bug:

- Created a new structure XGL_RENDER_PASS_BEGIN that contains
both the XGL_RENDER_PASS and XGL_FRAMEBUFFER.

- XGL_CMD_BUFFER_GRAPHICS_BEGIN_INFO and xglCmdBeginRenderPass
both use XGL_RENDER_PASS_BEGIN to ensure they stay consistent.

- Renamed the member in XGL_CMD_BUFFER_GRAPHICS_BEGIN_INFO to
renderPassContinue with a comment to clarify that this is
only needed when a render pass is split across two command buffer.

The last has the biggest impact on this patch. The tests now
directly call CmdBeginRenderPass and CmdEndRenderPass in the
command buffer rather than set the BEGIN_INFO to a render pass and
have the driver implicitly do BeginRenderPass and EndRenderPass.
It would probably still work, but didn't seem to match the intent
with this change in the header file.

9 years agoicd: remove unused icd-log.[ch]
Chia-I Wu [Sun, 22 Feb 2015 06:59:56 +0000 (14:59 +0800)]
icd: remove unused icd-log.[ch]

9 years agoFIXUP: update xglDbg.h for XGL_INSTANCE
Courtney Goeltzenleuchter [Mon, 13 Apr 2015 20:35:54 +0000 (14:35 -0600)]
FIXUP: update xglDbg.h for XGL_INSTANCE

commit ba1c0f351db007373bf16d95e607ec4511e27164
Author: Courtney Goeltzenleuchter <courtney@LunarG.com>
Date:   Mon Apr 13 14:10:06 2015 -0600

    xgl: update xglDbg.h for XGL_INSTANCE

9 years agoloader: Fix Dbg entrypoints with instance param to not loop all instances
Jon Ashburn [Tue, 17 Mar 2015 19:47:55 +0000 (13:47 -0600)]
loader: Fix Dbg entrypoints with instance param to not loop all instances

DbgRegisterMsgCallback, DbgUnregisterMsgCallback, DbgSetGlobalOption were all
making these calls for all instances rather than just instance passed in as
parameter.

9 years agoxgl: update xglDbg.h for XGL_INSTANCE
Courtney Goeltzenleuchter [Mon, 13 Apr 2015 20:10:06 +0000 (14:10 -0600)]
xgl: update xglDbg.h for XGL_INSTANCE

Add XGL_INSTANCE as the first parameter of xglDbgRegisterMsgCallback(),
xglDbgUnregisterMsgCallback(), and xglDbgSetGlobalOption().

The loader is simplified.  loader_log() is modified to always output to
stderr.

glave is modified to register its message callback after xglEnumerateGpus(),
and xglDbgUnregisterMsgCallback() is called only before xglDestroyInstance().

XGL_INSTANCE is ignored by the layers and the driver for now.

Bump up API version to XGL_MAKE_VERSION(0, 56, 1).

9 years agoxgl: Remove fixed and optimal tess factors
Courtney Goeltzenleuchter [Wed, 4 Mar 2015 18:49:39 +0000 (11:49 -0700)]
xgl: Remove fixed and optimal tess factors

bug #12962
alpha header: r29633 (V0.56.0)

9 years agoxgl: specialization constant proposal
Courtney Goeltzenleuchter [Wed, 4 Mar 2015 18:26:38 +0000 (11:26 -0700)]
xgl: specialization constant proposal

Alpha header version: r29632

9 years agoFIXUP: Add glave support for xglCmdClearColor patch
Courtney Goeltzenleuchter [Mon, 13 Apr 2015 20:33:40 +0000 (14:33 -0600)]
FIXUP: Add glave support for xglCmdClearColor patch

4559a6c90cdfc55ae94b0c5b9b9d0841031aa3d0 xgl: combine xglCmdClearColor* into one function

9 years agoxgl: combine xglCmdClearColor* into one function
Courtney Goeltzenleuchter [Fri, 3 Apr 2015 22:35:32 +0000 (16:35 -0600)]
xgl: combine xglCmdClearColor* into one function

combined the two xglCmdClearColorImage* functions into one,
with the XGL_CLEAR_COLOR struct

bug # 13172
alpha header: r29626

9 years agoloader: Fix prefix used to find layer library.
Courtney Goeltzenleuchter [Fri, 3 Apr 2015 20:53:08 +0000 (14:53 -0600)]
loader: Fix prefix used to find layer library.

9 years agoxgl: Update primitive topology enum
Courtney Goeltzenleuchter [Tue, 3 Mar 2015 18:38:12 +0000 (11:38 -0700)]
xgl: Update primitive topology enum

bug: 12959
header version: r29602

9 years agoxgl: Add missing formats and remove channel mapping
Courtney Goeltzenleuchter [Tue, 3 Mar 2015 18:30:36 +0000 (11:30 -0700)]
xgl: Add missing formats and remove channel mapping

Alpha header version: r29599

Changed formats:
XGL_FMT_BC1_UNORM => XGL_FMT_BC1_RGB_UNORM
XGL_FMT_BC1_SRGB => XGL_FMT_BC1_RGB_SRGB
XGL_FMT_ASTC_4x5_UNORM => XGL_FMT_ASTC_5x4_UNORM
XGL_FMT_ASTC_4x5_SRGB => XGL_FMT_ASTC_5x4_SRGB

New formats:
XGL_FMT_BC1_RGBA_UNORM
XGL_FMT_BC1_RGBA_SRGB
XGL_FMT_ETC2_R8G8B8_SRGB
XGL_FMT_ETC2_R8G8B8A1_SRGB
XGL_FMT_ETC2_R8G8B8A8_SRGB
XGL_FMT_B4G4R4A4_UNORM
XGL_FMT_B5G5R5A1_UNORM

None of the new formats are currently supported in the sample driver.

9 years agoxgl: Impossible to expose multi-function queues
Courtney Goeltzenleuchter [Fri, 6 Mar 2015 01:09:39 +0000 (18:09 -0700)]
xgl: Impossible to expose multi-function queues

Bug: 13363
header version: r29597 (0.51.0)
included review feedback.

9 years agoicd: Dont follow next twice in for loop
Tony Barbour [Wed, 8 Apr 2015 15:13:39 +0000 (09:13 -0600)]
icd: Dont follow next twice in for loop

9 years agoxgl: Remove unneeded library includes from xgl include folder
Courtney Goeltzenleuchter [Fri, 27 Mar 2015 19:19:30 +0000 (13:19 -0600)]
xgl: Remove unneeded library includes from xgl include folder

Some library include files needed for the Windows build were put
in two places. Have elminated the redundant copies in the main
include folder and demos gets them from the appropriate library
in the libs folder.

9 years agodemos/tri: fix a leak
Chia-I Wu [Thu, 16 Apr 2015 09:30:40 +0000 (17:30 +0800)]
demos/tri: fix a leak

03bc341897dc25ed717827eaaef5939b13bb5ec0 missed this line.

9 years agoxgl-generate.py: rewrite LoaderEntrypointsSubcommand
Chia-I Wu [Sat, 11 Apr 2015 08:07:13 +0000 (16:07 +0800)]
xgl-generate.py: rewrite LoaderEntrypointsSubcommand

With the goal to generalize dispatch rules and avoid code duplication.  As a
result, xglOpenPeerImage() is fixed and xglAllocDescriptorSets() gains error
checking.

9 years agoxgl-generate.py: add and use helpers from loader.h
Chia-I Wu [Sat, 11 Apr 2015 07:34:07 +0000 (15:34 +0800)]
xgl-generate.py: add and use helpers from loader.h

Add helpers to loader.h to improve readability of LoaderEntrypointsSubcommand.

9 years agoxgl-generate.py: add WinDefFileSubcommand
Chia-I Wu [Sat, 11 Apr 2015 02:56:50 +0000 (10:56 +0800)]
xgl-generate.py: add WinDefFileSubcommand

It replaces xgl-win-def-file-generate.py and is able to generate loader's
XGL.def.

9 years agodemo: remove XCB_NVIDIA paths
Chia-I Wu [Sat, 11 Apr 2015 04:55:53 +0000 (12:55 +0800)]
demo: remove XCB_NVIDIA paths

The memory returned by xglWsiX11CreatePresentableImage() is not supposed to be
freed.  This change at worse leaks the memories on app exiting for some
implementations.  That should be fine.

Also, the function returns at most one memory.  Remove multiple memory support
from tri.

9 years agodemos: set EXTERNAL_SPV from CMakeLists.txt
Chia-I Wu [Sat, 11 Apr 2015 05:06:46 +0000 (13:06 +0800)]
demos: set EXTERNAL_SPV from CMakeLists.txt

Do not abuse XCB_NVIDIA.

9 years agodemos: remove non-__linux__ paths
Chia-I Wu [Sat, 11 Apr 2015 04:45:21 +0000 (12:45 +0800)]
demos: remove non-__linux__ paths

I do not think they work in that the framebuffer is created with

  .colorAttachmentCount = 1,
  .pColorAttachments = NULL,

If we want to support offscreen rendering, add a command line option for that.
If we want to support other window systems, refactor the code first.

9 years agoMerge branch 'master' of https://github.com/KhronosGroup/GL-Next
Peter Lohrmann [Tue, 7 Apr 2015 00:25:03 +0000 (17:25 -0700)]
Merge branch 'master' of https://github.com/KhronosGroup/GL-Next

9 years agoMerge branch 'glave_snapshot_support'
Peter Lohrmann [Mon, 6 Apr 2015 21:14:44 +0000 (14:14 -0700)]
Merge branch 'glave_snapshot_support'

Conflicts:
layers/CMakeLists.txt
tools/glave/scripts/vk_generate.py
tools/glave/src/glv_extensions/glvreplay_xgl/CMakeLists.txt
tools/glave/src/glv_extensions/glvtrace_xgl/CMakeLists.txt
tools/glave/src/glv_extensions/glvtrace_xgl/codegen/glvtrace_xgl_xgl.c
tools/glave/src/glv_extensions/glvtrace_xgl/codegen/glvtrace_xgl_xgl.h
tools/glave/src/glv_extensions/glvtrace_xgl/codegen/xgl_struct_size_helper.h
tools/glave/src/glv_extensions/glvtrace_xgl/codegen/xgl_struct_string_helper.h
tools/glave/src/glv_extensions/glvtrace_xgl/codegen/xgl_struct_string_helper_cpp.h
tools/glave/src/glv_extensions/glvtrace_xgl/codegen/xgl_struct_string_helper_no_addr.h
tools/glave/src/glv_extensions/glvtrace_xgl/codegen/xgl_struct_string_helper_no_addr_cpp.h
tools/glave/src/glv_extensions/glvtrace_xgl/codegen/xgl_struct_validate_helper.h
tools/glave/src/glv_extensions/glvtrace_xgl/codegen/xgl_struct_wrappers.cpp
tools/glave/src/glv_extensions/glvtrace_xgl/codegen/xgl_struct_wrappers.h
xgl_helper.py

9 years agolayers: Update layer README.md info with current DrawState and MemTracker status
Tobin Ehlis [Mon, 6 Apr 2015 15:24:42 +0000 (09:24 -0600)]
layers: Update layer README.md info with current DrawState and MemTracker status

9 years agodemos: Fix shader assert in tri.c
Mark Lobodzinski [Mon, 6 Apr 2015 20:24:40 +0000 (15:24 -0500)]
demos: Fix shader assert in tri.c

Updating tri demo's shader versions to 140 keeps them from asserting

9 years agolayers: Updated for explicit fence validation with multiple queues
Mark Lobodzinski [Fri, 3 Apr 2015 01:49:09 +0000 (20:49 -0500)]
layers: Updated for explicit fence validation with multiple queues

Fences were being validated to make sure they had been retired, layer
was updated to validate that the app has checked the fences.

9 years agolayers: Added support for multiple queues
Mark Lobodzinski [Thu, 2 Apr 2015 13:52:53 +0000 (08:52 -0500)]
layers: Added support for multiple queues

Not supported on Intel, but will be on other hw.

9 years agolayers: Added GetDeviceQueue API, fixed up variable names
Mark Lobodzinski [Tue, 31 Mar 2015 21:05:35 +0000 (16:05 -0500)]
layers: Added GetDeviceQueue API, fixed up variable names

Updated LinkedList-related variable names

9 years agoMerge remote-tracking branch 'origin/master'
Piers Daniell [Fri, 3 Apr 2015 23:46:24 +0000 (17:46 -0600)]
Merge remote-tracking branch 'origin/master'

Conflicts:
loader/loader.c

9 years agoloader: Work correctly when there is no reg entry
Piers Daniell [Fri, 3 Apr 2015 23:44:52 +0000 (17:44 -0600)]
loader: Work correctly when there is no reg entry

Without this fix the loader will crash if there is no registry entry.

9 years agodemo: tri: Use explicit locations on the attribs
Piers Daniell [Fri, 3 Apr 2015 23:44:02 +0000 (17:44 -0600)]
demo: tri: Use explicit locations on the attribs

Without this the attributes may assume the wrong vertex attrib slot.

9 years agodemos: copy XGL.dll to target folder
Piers Daniell [Fri, 3 Apr 2015 23:42:59 +0000 (17:42 -0600)]
demos: copy XGL.dll to target folder

Makes life easier so the XGL.dll doesn't have to be manually copied
every time.