mesa.git
9 years agovk: Move to the new pipeline creation API's
Jason Ekstrand [Thu, 9 Jul 2015 00:29:49 +0000 (17:29 -0700)]
vk: Move to the new pipeline creation API's

9 years agovk/0.130: Remove VkImageViewCreateInfo::minLod
Chad Versace [Wed, 8 Jul 2015 21:39:05 +0000 (14:39 -0700)]
vk/0.130: Remove VkImageViewCreateInfo::minLod

It's now set solely through VkSampler.

9 years agovk/vulkan.h: Move renderPassContinue from GraphicsBeginInfo to BeginInfo
Jason Ekstrand [Wed, 8 Jul 2015 21:37:30 +0000 (14:37 -0700)]
vk/vulkan.h: Move renderPassContinue from GraphicsBeginInfo to BeginInfo

9 years agovk/vulkan.h: Update to the new UpdateDescriptorSets api
Jason Ekstrand [Wed, 8 Jul 2015 21:24:56 +0000 (14:24 -0700)]
vk/vulkan.h: Update to the new UpdateDescriptorSets api

9 years agovk: Add a macro for creating anv variables from vulkan handles
Jason Ekstrand [Wed, 8 Jul 2015 21:24:12 +0000 (14:24 -0700)]
vk: Add a macro for creating anv variables from vulkan handles

This is very helpful for doing the mass bunch of casts at the top of a
function.  It will also be invaluable when we get type saftey in the API.

9 years agovk/0.130 Update VkObjectType values
Chad Versace [Wed, 8 Jul 2015 19:53:49 +0000 (12:53 -0700)]
vk/0.130 Update VkObjectType values

Don't import any new enum tokens from the 0.130 header. Just update the
values of existing enums. This reduces the diff by about 16 lines.

9 years agovk/0.130: Remove VkDescriptorUpdateMode
Chad Versace [Wed, 8 Jul 2015 19:51:46 +0000 (12:51 -0700)]
vk/0.130: Remove VkDescriptorUpdateMode

Nowhere used.

9 years agovk/0.130: Remove VK_DEVICE_CREATE_MULTI_DEVICE_IQ_MATCH_BIT
Chad Versace [Wed, 8 Jul 2015 19:49:15 +0000 (12:49 -0700)]
vk/0.130: Remove VK_DEVICE_CREATE_MULTI_DEVICE_IQ_MATCH_BIT

9 years agovk/0.130: Update vkCmdBlitImage signature
Chad Versace [Wed, 8 Jul 2015 19:46:35 +0000 (12:46 -0700)]
vk/0.130: Update vkCmdBlitImage signature

Add VkTexFilter param. Ignored for now.

9 years agovk/vulkan.h: Add packing parameters to BufferImageCopy
Jason Ekstrand [Wed, 8 Jul 2015 18:51:12 +0000 (11:51 -0700)]
vk/vulkan.h: Add packing parameters to BufferImageCopy

9 years agovk/0.130: Remove msaa members of VkDepthStencilViewCreateInfo
Chad Versace [Wed, 8 Jul 2015 18:49:43 +0000 (11:49 -0700)]
vk/0.130: Remove msaa members of VkDepthStencilViewCreateInfo

9 years agovk/vulkan.h: Move over to the new border color enums
Jason Ekstrand [Wed, 8 Jul 2015 18:44:52 +0000 (11:44 -0700)]
vk/vulkan.h: Move over to the new border color enums

9 years agovk/vulkan.h: Move VkFormatProperties
Jason Ekstrand [Wed, 8 Jul 2015 18:16:45 +0000 (11:16 -0700)]
vk/vulkan.h: Move VkFormatProperties

9 years agovk/vulkan.h: Add RenderPassBeginContents
Jason Ekstrand [Wed, 8 Jul 2015 17:57:13 +0000 (10:57 -0700)]
vk/vulkan.h: Add RenderPassBeginContents

9 years agovk/vulkan.h: Add command buffer levels
Jason Ekstrand [Wed, 8 Jul 2015 17:53:32 +0000 (10:53 -0700)]
vk/vulkan.h: Add command buffer levels

9 years agovk/vulkan.h: Import the VkPipeEvent enum from 130
Jason Ekstrand [Wed, 8 Jul 2015 17:49:43 +0000 (10:49 -0700)]
vk/vulkan.h: Import the VkPipeEvent enum from 130

Now, VkPipeEventFlags is back in sync with VkPipeEvent

9 years agovk/vulkan.h: Remove VkFormatInfoType
Jason Ekstrand [Wed, 8 Jul 2015 17:39:31 +0000 (10:39 -0700)]
vk/vulkan.h: Remove VkFormatInfoType

9 years agovk/vulkan.h: Update extension handling to rev 130
Jason Ekstrand [Wed, 8 Jul 2015 17:38:07 +0000 (10:38 -0700)]
vk/vulkan.h: Update extension handling to rev 130

9 years agovk/vulkan.h: Move format quering to the physical device
Jason Ekstrand [Wed, 8 Jul 2015 16:34:47 +0000 (09:34 -0700)]
vk/vulkan.h: Move format quering to the physical device

9 years agovk/vulkan.h: Remove some peer opening structs and STRUCTURE_TYPE enums
Jason Ekstrand [Wed, 8 Jul 2015 16:25:13 +0000 (09:25 -0700)]
vk/vulkan.h: Remove some peer opening structs and STRUCTURE_TYPE enums

9 years agovk: Add a copy of the v90 header.
Jason Ekstrand [Wed, 8 Jul 2015 16:23:29 +0000 (09:23 -0700)]
vk: Add a copy of the v90 header.

9 years agovk/vulkan.h: Remove an unneeded comment
Jason Ekstrand [Wed, 8 Jul 2015 16:18:09 +0000 (09:18 -0700)]
vk/vulkan.h: Remove an unneeded comment

9 years agovk/vulkan.h: Remove the MemoryRange stubs and add sparse stubs
Jason Ekstrand [Wed, 8 Jul 2015 16:16:48 +0000 (09:16 -0700)]
vk/vulkan.h: Remove the MemoryRange stubs and add sparse stubs

9 years agovk/vulkan.h: Switch BindObjectMemory to a device function and remove the index
Jason Ekstrand [Wed, 8 Jul 2015 16:04:16 +0000 (09:04 -0700)]
vk/vulkan.h: Switch BindObjectMemory to a device function and remove the index

9 years agovk/vulkan.h: Switch to the split ProcAddr functions in 130
Jason Ekstrand [Wed, 8 Jul 2015 01:51:53 +0000 (18:51 -0700)]
vk/vulkan.h: Switch to the split ProcAddr functions in 130

9 years agovk/vulkan.h: Switch from GetImageSubresourceInfo to GetImageSubresourceLayout
Jason Ekstrand [Wed, 8 Jul 2015 01:20:18 +0000 (18:20 -0700)]
vk/vulkan.h: Switch from GetImageSubresourceInfo to GetImageSubresourceLayout

9 years agovk/vulkan.h: Switch from GetObjectInfo to GetMemoryRequirements
Jason Ekstrand [Wed, 8 Jul 2015 01:16:42 +0000 (18:16 -0700)]
vk/vulkan.h: Switch from GetObjectInfo to GetMemoryRequirements

9 years agovk: Update memory flushing functions to 130
Jason Ekstrand [Wed, 8 Jul 2015 00:22:29 +0000 (17:22 -0700)]
vk: Update memory flushing functions to 130

This involves updating the prototype for FlushMappedMemory, adding
InvalidateMappedMemoryRanges, and removing PinSystemMemory.

9 years agovk/vulkan.h: Constify the pFences parameter to ResetFences
Jason Ekstrand [Wed, 8 Jul 2015 00:18:00 +0000 (17:18 -0700)]
vk/vulkan.h: Constify the pFences parameter to ResetFences

9 years agovk/vulkan.h: Move the definitions of Create(Framebuffer|RenderPass)
Jason Ekstrand [Wed, 8 Jul 2015 00:13:05 +0000 (17:13 -0700)]
vk/vulkan.h: Move the definitions of Create(Framebuffer|RenderPass)

This better matches the 130 header.

9 years agovk: Implement the GetRenderAreaGranularity function
Jason Ekstrand [Wed, 8 Jul 2015 00:11:35 +0000 (17:11 -0700)]
vk: Implement the GetRenderAreaGranularity function

At the moment, we're just going to scissor clears so a granularity of 1x1
is all we need.

9 years agovk/vulkan.h: Add a PipelineLayout parameter to BindDescriptorSets
Jason Ekstrand [Wed, 8 Jul 2015 00:06:10 +0000 (17:06 -0700)]
vk/vulkan.h: Add a PipelineLayout parameter to BindDescriptorSets

9 years agovk/vulkan.h: Add a compareEnable parameter to SamplerCreateInfo
Jason Ekstrand [Tue, 7 Jul 2015 23:49:01 +0000 (16:49 -0700)]
vk/vulkan.h: Add a compareEnable parameter to SamplerCreateInfo

Our hardware doesn't actually need this, so adding it is a no-op.

9 years agovk/vulkan.h: Remove initialCount from SemaphoreCreateInfo
Jason Ekstrand [Tue, 7 Jul 2015 23:42:42 +0000 (16:42 -0700)]
vk/vulkan.h: Remove initialCount from SemaphoreCreateInfo

9 years agovk/vulkan.h: Update clear color handling to 130
Jason Ekstrand [Tue, 7 Jul 2015 23:37:43 +0000 (16:37 -0700)]
vk/vulkan.h: Update clear color handling to 130

9 years agometa: Use the VkClearColorValue structure for the color attribute
Jason Ekstrand [Tue, 7 Jul 2015 23:27:06 +0000 (16:27 -0700)]
meta: Use the VkClearColorValue structure for the color attribute

9 years agovk/vulkan.h: Remove the pass argument from EndRenderPass
Jason Ekstrand [Tue, 7 Jul 2015 23:22:23 +0000 (16:22 -0700)]
vk/vulkan.h: Remove the pass argument from EndRenderPass

9 years agovk/vulkan.h: Rename VertexInputStateInfo to VertexInputStateCreateInfo
Jason Ekstrand [Tue, 7 Jul 2015 23:15:55 +0000 (16:15 -0700)]
vk/vulkan.h: Rename VertexInputStateInfo to VertexInputStateCreateInfo

9 years agovk/vulkan.h: Remove programPointSize
Jason Ekstrand [Tue, 7 Jul 2015 22:57:03 +0000 (15:57 -0700)]
vk/vulkan.h: Remove programPointSize

Instead, we auto-detect whether or not your shader writes gl_PointSize.  If
it does, we use 1.0, otherwise we take it from the shader.

9 years agovk/0.130: Stub vkCmdClear*Attachment() funcs
Chad Versace [Tue, 7 Jul 2015 22:56:12 +0000 (15:56 -0700)]
vk/0.130: Stub vkCmdClear*Attachment() funcs

vkCmdClearColorAttachment
vkCmdClearDepthStencilAttachment

9 years agovk/0.130: Define enum VkImageAspectFlagBits
Chad Versace [Tue, 7 Jul 2015 22:57:17 +0000 (15:57 -0700)]
vk/0.130: Define enum VkImageAspectFlagBits

9 years agovk/0.130: Define VkRect3D
Chad Versace [Tue, 7 Jul 2015 22:55:53 +0000 (15:55 -0700)]
vk/0.130: Define VkRect3D

9 years agovk/0.130: Update name of vkCmdClearDepthStencilImage()
Chad Versace [Tue, 7 Jul 2015 22:53:35 +0000 (15:53 -0700)]
vk/0.130: Update name of vkCmdClearDepthStencilImage()

9 years agovk/0.130: Stub vkCmdExecuteCommands()
Chad Versace [Tue, 7 Jul 2015 22:51:55 +0000 (15:51 -0700)]
vk/0.130: Stub vkCmdExecuteCommands()

9 years agovk/0.130: Update vkCmdWaitEvents() signature
Chad Versace [Tue, 7 Jul 2015 22:49:57 +0000 (15:49 -0700)]
vk/0.130: Update vkCmdWaitEvents() signature

9 years agovk: Remove unused 'v' param from stub() macro
Chad Versace [Tue, 7 Jul 2015 22:47:24 +0000 (15:47 -0700)]
vk: Remove unused 'v' param from stub() macro

9 years agovk: Stub vkCmdPushConstants() from 0.130 header
Chad Versace [Tue, 7 Jul 2015 22:46:19 +0000 (15:46 -0700)]
vk: Stub vkCmdPushConstants() from 0.130 header

9 years agovk: Update vkCmdPipelineBarrier to 0.130 header
Chad Versace [Tue, 7 Jul 2015 22:42:38 +0000 (15:42 -0700)]
vk: Update vkCmdPipelineBarrier to 0.130 header

9 years agovk: Add func anv_clear_mask()
Chad Versace [Tue, 7 Jul 2015 22:42:04 +0000 (15:42 -0700)]
vk: Add func anv_clear_mask()

A little helper func for inspecting and clearing bitmasks.

9 years agovk/vulkan.h: Remove some unused fields.
Jason Ekstrand [Tue, 7 Jul 2015 21:42:47 +0000 (14:42 -0700)]
vk/vulkan.h: Remove some unused fields.

In particular, the following are removed:

 - disableVertexReuse
 - clipOrigin
 - depthMode
 - pointOrigin
 - provokingVertex

9 years agovk/vulkan.h: Remove the explicit primitive restart index
Jason Ekstrand [Tue, 7 Jul 2015 22:11:56 +0000 (15:11 -0700)]
vk/vulkan.h: Remove the explicit primitive restart index

Unfortunately, this requires some non-trivial changes to the driver.  Now
that the primitive restart index isn't given explicitly by the client, we
always use ~0 for everything like D3D does.  Unfortunately, our hardware is
awesome and a 32-bit version of ~0 doesn't match any 16-bit values.  This
means, we have to set it to either UINT16_MAX or UINT32_MAX depending on
the size of the index type.  Since we get the index type from
CmdBindIndexBuffer and the rest of the VF packet from the pipeline, we need
to lazy-emit the VF packet.

9 years agovk: Delete some comments not present in 0.130 header
Chad Versace [Tue, 7 Jul 2015 22:16:13 +0000 (15:16 -0700)]
vk: Delete some comments not present in 0.130 header

Deleting the comments reduces diff noise.

9 years agovk: Pull in remaining 0.130 handle types
Chad Versace [Tue, 7 Jul 2015 22:13:01 +0000 (15:13 -0700)]
vk: Pull in remaining 0.130 handle types

This pulls in the definition of VkShaderModule and VkPipelineCache,
which nowhere used yet.

9 years agovk: Pull in #defines from 0.130 header
Chad Versace [Tue, 7 Jul 2015 22:10:34 +0000 (15:10 -0700)]
vk: Pull in #defines from 0.130 header

Despite not being used yet, pulling in the macros does diminish the
header diff.

9 years agovk/vulkan.h: Rename (min|max)Depth to (min|max)DepthBounds
Jason Ekstrand [Tue, 7 Jul 2015 19:37:54 +0000 (12:37 -0700)]
vk/vulkan.h: Rename (min|max)Depth to (min|max)DepthBounds

9 years agovk/vulkan.h: Remove client-settable pointSize from DynamicRsState
Jason Ekstrand [Tue, 7 Jul 2015 19:35:32 +0000 (12:35 -0700)]
vk/vulkan.h: Remove client-settable pointSize from DynamicRsState

9 years agovk/vulkan.h: Remove UINT8 index buffers
Jason Ekstrand [Tue, 7 Jul 2015 18:26:26 +0000 (11:26 -0700)]
vk/vulkan.h: Remove UINT8 index buffers

9 years agovk/vulkan.h: Re-order the object declarations
Jason Ekstrand [Tue, 7 Jul 2015 17:37:14 +0000 (10:37 -0700)]
vk/vulkan.h: Re-order the object declarations

9 years agovk: Emit 3DSTATE_SAMPLE_MASK
Kristian Høgsberg Kristensen [Tue, 7 Jul 2015 05:21:51 +0000 (22:21 -0700)]
vk: Emit 3DSTATE_SAMPLE_MASK

This was missing and was causing the driver to not work with
execlists. Presumably we get a different initial hw context with
execlists enabled, that has sample mask 0 initially.

Set this to 0xffff for now.  When we add MS support, we need to take the
value from VkPipelineMsStateCreateInfo::sampleMask.

9 years agovk: Pull in new generated headers
Kristian Høgsberg Kristensen [Mon, 22 Jun 2015 06:47:10 +0000 (23:47 -0700)]
vk: Pull in new generated headers

The new headers use stdbool for enable/disable fields which
implicitly converts expressions like (flags & 8) to 0 or 1.
Also handles MBO (must-be-one) fields by setting them to one,
corrects a bspec typo (_3DPRIM_LISTSTRIP_ADJ -> LINESTRIP) and
makes a few enum values less clashy.

9 years agovk/image: Validate vkCreateImageView more
Chad Versace [Tue, 7 Jul 2015 00:04:13 +0000 (17:04 -0700)]
vk/image: Validate vkCreateImageView more

Exhaustively validate the function input.  If it's not validated and
doesn't have an anv_finishme(), then I overlooked it.

9 years agovk/image: Add more info to VkImageViewType table
Chad Versace [Mon, 6 Jul 2015 23:25:59 +0000 (16:25 -0700)]
vk/image: Add more info to VkImageViewType table

Convert the table from the direct mapping
  VkImageViewType -> SurfaceType

into a mapping to an info struct
  VkImageViewType -> struct anv_image_view_info

9 years agovk: Update VkImageViewType to 0.130.0
Chad Versace [Mon, 6 Jul 2015 22:51:46 +0000 (15:51 -0700)]
vk: Update VkImageViewType to 0.130.0

This splits 1D and 1D_ARRAY, 2D and 2D_ARRAY, CUBE and CUBE_ARRAY.

The new tokens are unused. This is just a header update.

9 years agovk/image: Move validation for vkCreateImageView
Chad Versace [Mon, 6 Jul 2015 23:24:28 +0000 (16:24 -0700)]
vk/image: Move validation for vkCreateImageView

Move the validation from anv_CreateImageView() and anv_image_view_init()
to anv_validate_CreateImageView(). No new validation is added.

9 years agovk/vulkan.h: Rename VkRect to VkRect2D
Jason Ekstrand [Tue, 7 Jul 2015 00:47:18 +0000 (17:47 -0700)]
vk/vulkan.h: Rename VkRect to VkRect2D

9 years agovk/vulkan.h: Rename count to arraySize in VkDescriptorSetLayoutBinding
Jason Ekstrand [Tue, 7 Jul 2015 00:43:58 +0000 (17:43 -0700)]
vk/vulkan.h: Rename count to arraySize in VkDescriptorSetLayoutBinding

9 years agovk/vulkan.h: Remove the Vk(Memory|Semaphor|Image)OpenInfo structs
Jason Ekstrand [Tue, 7 Jul 2015 00:37:11 +0000 (17:37 -0700)]
vk/vulkan.h: Remove the Vk(Memory|Semaphor|Image)OpenInfo structs

We already deleted the functions that need them.  The structs are just
dangling uselessly.

9 years agovk/vulkan.h: Remove VK_MEMORY_PROPERTY_PREFER_HOST_LOCAL_BIT
Jason Ekstrand [Tue, 7 Jul 2015 00:33:43 +0000 (17:33 -0700)]
vk/vulkan.h: Remove VK_MEMORY_PROPERTY_PREFER_HOST_LOCAL_BIT

We weren't doing anything with it, so this is a no-op

9 years agovk/vulkan.h: Replace DEVICE_COHERENT_BIT with DEVICE_NON_COHERENT_BIT
Jason Ekstrand [Tue, 7 Jul 2015 00:32:28 +0000 (17:32 -0700)]
vk/vulkan.h: Replace DEVICE_COHERENT_BIT with DEVICE_NON_COHERENT_BIT

9 years agovk/vulkan.h: Use the query result bits from revision 130
Jason Ekstrand [Tue, 7 Jul 2015 00:27:11 +0000 (17:27 -0700)]
vk/vulkan.h: Use the query result bits from revision 130

None of the important bits or names actually changed.  It just
added/removed some no-op names.

No functional change.

9 years agovk/vulkan.h: One more quick enum refactor clean-up
Jason Ekstrand [Tue, 7 Jul 2015 00:26:29 +0000 (17:26 -0700)]
vk/vulkan.h: One more quick enum refactor clean-up

9 years agovk/vulkan.h: Get rid of VERTEX_INPUT_STEP_RATE_DRAW
Jason Ekstrand [Tue, 7 Jul 2015 00:23:46 +0000 (17:23 -0700)]
vk/vulkan.h: Get rid of VERTEX_INPUT_STEP_RATE_DRAW

We never supported it, so no functional change.

9 years agovk/vulkan.h: Remove the CLEAR_OPTIMAL image layout
Jason Ekstrand [Tue, 7 Jul 2015 00:21:19 +0000 (17:21 -0700)]
vk/vulkan.h: Remove the CLEAR_OPTIMAL image layout

9 years agovk: Rename CPU_READ/WRITE_BIT to HOST_READ/WRITE_BIT
Jason Ekstrand [Tue, 7 Jul 2015 00:18:25 +0000 (17:18 -0700)]
vk: Rename CPU_READ/WRITE_BIT to HOST_READ/WRITE_BIT

9 years agovk/vulkan.h: Remove VK_IMAGE_CREATE_CLONEABLE_BIT
Jason Ekstrand [Tue, 7 Jul 2015 00:14:30 +0000 (17:14 -0700)]
vk/vulkan.h: Remove VK_IMAGE_CREATE_CLONEABLE_BIT

9 years agovk: Remove SHAREABLE bits
Jason Ekstrand [Tue, 7 Jul 2015 00:12:47 +0000 (17:12 -0700)]
vk: Remove SHAREABLE bits

They were removed from the Vulkan API and we don't really use them because
there are no multi-GPU i965 systems.

9 years agovk/vulkan.h: Re-order the logic op enums
Jason Ekstrand [Tue, 7 Jul 2015 00:08:11 +0000 (17:08 -0700)]
vk/vulkan.h: Re-order the logic op enums

9 years agovk/vulkan.h: Reformat a bunch of enums to match revision 130
Jason Ekstrand [Tue, 7 Jul 2015 00:06:02 +0000 (17:06 -0700)]
vk/vulkan.h: Reformat a bunch of enums to match revision 130

In theory, no functional change.

9 years agovk: Rename NUM_SHADER_STAGE to SHADER_STAGE_NUM
Jason Ekstrand [Mon, 6 Jul 2015 23:43:28 +0000 (16:43 -0700)]
vk: Rename NUM_SHADER_STAGE to SHADER_STAGE_NUM

This is a refactor of more than just the header but it lets us finish
reformating the shader stage enum.

9 years agovk: Reformat a bunch of enums
Jason Ekstrand [Mon, 6 Jul 2015 23:41:31 +0000 (16:41 -0700)]
vk: Reformat a bunch of enums

This accounts for a number differences between the generated headers and
the hand-written header.  Not all reformatting is done in this commit but
it does make the headers much more diffable.

In theory, no functional change.

9 years agovk: Pull the VkResult enum from revision 130
Jason Ekstrand [Mon, 6 Jul 2015 23:15:12 +0000 (16:15 -0700)]
vk: Pull the VkResult enum from revision 130

9 years agovk: re-arrange enums to match the order in revision 130
Jason Ekstrand [Mon, 6 Jul 2015 23:11:05 +0000 (16:11 -0700)]
vk: re-arrange enums to match the order in revision 130

9 years agovk: Rename a parameter in CmdBindDynamicStateObject
Jason Ekstrand [Mon, 6 Jul 2015 22:37:17 +0000 (15:37 -0700)]
vk: Rename a parameter in CmdBindDynamicStateObject

9 years agovk: Remove multi-device stuff
Jason Ekstrand [Mon, 6 Jul 2015 22:34:55 +0000 (15:34 -0700)]
vk: Remove multi-device stuff

9 years agovk: Remove ClearDescriptorSets
Jason Ekstrand [Mon, 6 Jul 2015 22:32:40 +0000 (15:32 -0700)]
vk: Remove ClearDescriptorSets

9 years agovk: Remove begin/end descriptor pool update
Jason Ekstrand [Mon, 6 Jul 2015 22:32:27 +0000 (15:32 -0700)]
vk: Remove begin/end descriptor pool update

9 years agovk: Remove stub for CloneImageData
Jason Ekstrand [Mon, 6 Jul 2015 22:30:05 +0000 (15:30 -0700)]
vk: Remove stub for CloneImageData

9 years agovk: Remove the stub support for memory priorities
Jason Ekstrand [Mon, 6 Jul 2015 22:28:10 +0000 (15:28 -0700)]
vk: Remove the stub support for memory priorities

9 years agovk: Remove the stub support for explicit memory references
Jason Ekstrand [Mon, 6 Jul 2015 22:27:58 +0000 (15:27 -0700)]
vk: Remove the stub support for explicit memory references

9 years agovk/vulkan.h: Reformat structs to match revision 130
Jason Ekstrand [Mon, 6 Jul 2015 22:19:04 +0000 (15:19 -0700)]
vk/vulkan.h: Reformat structs to match revision 130

Structs in the old version were specified as

typedef struct VkSomeThing_
{
   type                                        field; // comment
} VkSomeThing;

However, in the generated headers, you have

typedef struct {
   type                                        field;
} VkSomeThing;

This commit also removes some unneeded whitespaces.

9 years agovk/vulkah.h: Re-arrange structures to match the order in 130
Jason Ekstrand [Mon, 6 Jul 2015 22:09:21 +0000 (15:09 -0700)]
vk/vulkah.h: Re-arrange structures to match the order in 130

9 years agonir/spirv: fix some bugs
Connor Abbott [Mon, 6 Jul 2015 21:58:55 +0000 (14:58 -0700)]
nir/spirv: fix some bugs

9 years agonir/spirv: add support for builtins inside structures
Connor Abbott [Sat, 4 Jul 2015 22:53:47 +0000 (15:53 -0700)]
nir/spirv: add support for builtins inside structures

We may be able to revert this depending on the outcome of bug 14190, but
for now it gets vertex shaders working with SPIR-V.

9 years agonir/spirv: fix a bug with structure creation
Connor Abbott [Sat, 4 Jul 2015 22:51:24 +0000 (15:51 -0700)]
nir/spirv: fix a bug with structure creation

We were creating 2 extra bogus fields.

9 years agonir/spirv: fix a bad assertion in the decoration handling
Connor Abbott [Sat, 4 Jul 2015 22:46:58 +0000 (15:46 -0700)]
nir/spirv: fix a bad assertion in the decoration handling

We should be asserting that the parent decoration didn't hand us
a member if the child decoration did, but different child decorations
may obviously have different members.

9 years agonir/spirv: pull out logic for getting builtin locations
Connor Abbott [Sat, 4 Jul 2015 17:49:12 +0000 (10:49 -0700)]
nir/spirv: pull out logic for getting builtin locations

Also add support for more builtins.

9 years agonir/spirv: plumb through the type of dereferences
Connor Abbott [Thu, 2 Jul 2015 22:49:08 +0000 (15:49 -0700)]
nir/spirv: plumb through the type of dereferences

We need this to know if a deref is of a builtin.

9 years agonir/spirv: handle structure member builtin decorations
Connor Abbott [Thu, 2 Jul 2015 22:22:27 +0000 (15:22 -0700)]
nir/spirv: handle structure member builtin decorations

9 years agonir/spirv: add a vtn_type struct
Connor Abbott [Thu, 2 Jul 2015 21:24:12 +0000 (14:24 -0700)]
nir/spirv: add a vtn_type struct

This will handle decorations that aren't in the glsl_type.

9 years agonir/spirv: move 'type' into the union
Connor Abbott [Thu, 2 Jul 2015 19:55:25 +0000 (12:55 -0700)]
nir/spirv: move 'type' into the union

Since SSA values now have their own types, it's more convenient to make
'type' only used when we want to look up an actual SPIR-V type, since
we're going to change its type soon to support various decorations that
are handled at the SPIR-V -> NIR level.