Connor Abbott
b8fedc19f5
nir/spirv: fix memory context for builtin variable
...
Fixes valgrind errors with func.depthstencil.basic.
2015-07-08 22:03:30 -04:00
Connor Abbott
e4292ac039
nir/spirv: zero out value array
...
Before values are pushed or annotated with a name, decoration, etc.,
they need to have an invalid type, NULL name, NULL decoration, etc.
ralloc zero's everything by accident, so this wasn't an issue in
practice, but we should be explicitly zero'ing it.
2015-07-08 22:03:30 -04:00
Connor Abbott
997831868f
vk/compiler: create the right kind of program struct
...
This fixes Valgrind errors and gets all the tests to pass with
--use-spir-v.
2015-07-08 22:03:30 -04:00
Connor Abbott
a841e2c747
vk/compiler: mark inputs/outputs as read/written
...
This doesn't handle inputs and outputs larger than a vec4, but we plan
to add a varyiing splitting/packing pass to handle those anyways.
2015-07-08 22:03:30 -04:00
Jason Ekstrand
5a4ebf6bc1
vk: Move to the new pipeline creation API's
2015-07-08 17:30:18 -07:00
Chad Versace
4fcb32a17d
vk/0.130: Remove VkImageViewCreateInfo::minLod
...
It's now set solely through VkSampler.
2015-07-08 14:48:22 -07:00
Jason Ekstrand
d29ec8fa36
vk/vulkan.h: Update to the new UpdateDescriptorSets api
2015-07-08 14:24:56 -07:00
Jason Ekstrand
c8577b5f52
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.
2015-07-08 14:24:14 -07:00
Chad Versace
e9034ed875
vk/0.130: Update vkCmdBlitImage signature
...
Add VkTexFilter param. Ignored for now.
2015-07-08 12:47:48 -07:00
Jason Ekstrand
aae45ab583
vk/vulkan.h: Add packing parameters to BufferImageCopy
2015-07-08 11:51:34 -07:00
Chad Versace
b4ef7f354b
vk/0.130: Remove msaa members of VkDepthStencilViewCreateInfo
2015-07-08 11:50:51 -07:00
Jason Ekstrand
522ab835d6
vk/vulkan.h: Move over to the new border color enums
2015-07-08 11:44:52 -07:00
Jason Ekstrand
52940e8fcf
vk/vulkan.h: Add RenderPassBeginContents
2015-07-08 10:57:13 -07:00
Jason Ekstrand
e19d6be2a9
vk/vulkan.h: Add command buffer levels
2015-07-08 10:53:32 -07:00
Jason Ekstrand
8e05bbeee9
vk/vulkan.h: Update extension handling to rev 130
2015-07-08 10:38:07 -07:00
Jason Ekstrand
cc29a5f4be
vk/vulkan.h: Move format quering to the physical device
2015-07-08 09:34:47 -07:00
Jason Ekstrand
3c65a1ac14
vk/vulkan.h: Remove the MemoryRange stubs and add sparse stubs
2015-07-08 09:16:48 -07:00
Jason Ekstrand
bb6567f5d1
vk/vulkan.h: Switch BindObjectMemory to a device function and remove the index
2015-07-08 09:04:16 -07:00
Jason Ekstrand
e7acdda184
vk/vulkan.h: Switch to the split ProcAddr functions in 130
2015-07-07 18:51:53 -07:00
Jason Ekstrand
db24afee2f
vk/vulkan.h: Switch from GetImageSubresourceInfo to GetImageSubresourceLayout
2015-07-07 18:20:18 -07:00
Jason Ekstrand
ef8980e256
vk/vulkan.h: Switch from GetObjectInfo to GetMemoryRequirements
2015-07-07 18:16:42 -07:00
Jason Ekstrand
d9c2caea6a
vk: Update memory flushing functions to 130
...
This involves updating the prototype for FlushMappedMemory, adding
InvalidateMappedMemoryRanges, and removing PinSystemMemory.
2015-07-07 17:22:31 -07:00
Jason Ekstrand
d5349b1b18
vk/vulkan.h: Constify the pFences parameter to ResetFences
2015-07-07 17:18:00 -07:00
Jason Ekstrand
0ff06540ae
vk: Implement the GetRenderAreaGranularity function
...
At the moment, we're just going to scissor clears so a granularity of 1x1
is all we need.
2015-07-07 17:11:37 -07:00
Jason Ekstrand
435b062b26
vk/vulkan.h: Add a PipelineLayout parameter to BindDescriptorSets
2015-07-07 17:06:10 -07:00
Jason Ekstrand
80046a7d54
vk/vulkan.h: Update clear color handling to 130
2015-07-07 16:37:43 -07:00
Jason Ekstrand
3e4b00d283
meta: Use the VkClearColorValue structure for the color attribute
2015-07-07 16:27:06 -07:00
Jason Ekstrand
a35fef1ab2
vk/vulkan.h: Remove the pass argument from EndRenderPass
2015-07-07 16:22:23 -07:00
Jason Ekstrand
d2ca7e24b4
vk/vulkan.h: Rename VertexInputStateInfo to VertexInputStateCreateInfo
2015-07-07 16:15:55 -07:00
Jason Ekstrand
abbb776bbe
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.
2015-07-07 16:00:46 -07:00
Chad Versace
e7ddfe03ab
vk/0.130: Stub vkCmdClear*Attachment() funcs
...
vkCmdClearColorAttachment
vkCmdClearDepthStencilAttachment
2015-07-07 15:57:37 -07:00
Chad Versace
11901a9100
vk/0.130: Update name of vkCmdClearDepthStencilImage()
2015-07-07 15:53:35 -07:00
Chad Versace
dff32238c7
vk/0.130: Stub vkCmdExecuteCommands()
2015-07-07 15:51:55 -07:00
Chad Versace
85c0d69be9
vk/0.130: Update vkCmdWaitEvents() signature
2015-07-07 15:49:57 -07:00
Chad Versace
0ecb789b71
vk: Remove unused 'v' param from stub() macro
2015-07-07 15:47:24 -07:00
Chad Versace
f78d684772
vk: Stub vkCmdPushConstants() from 0.130 header
2015-07-07 15:46:19 -07:00
Chad Versace
18ee32ef9d
vk: Update vkCmdPipelineBarrier to 0.130 header
2015-07-07 15:43:41 -07:00
Chad Versace
4af79ab076
vk: Add func anv_clear_mask()
...
A little helper func for inspecting and clearing bitmasks.
2015-07-07 15:43:41 -07:00
Jason Ekstrand
788a8352b9
vk/vulkan.h: Remove some unused fields.
...
In particular, the following are removed:
- disableVertexReuse
- clipOrigin
- depthMode
- pointOrigin
- provokingVertex
2015-07-07 15:33:00 -07:00
Jason Ekstrand
7fbed521bb
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.
2015-07-07 15:33:00 -07:00
Jason Ekstrand
1fb859e4b2
vk/vulkan.h: Remove client-settable pointSize from DynamicRsState
2015-07-07 12:35:32 -07:00
Jason Ekstrand
245583075c
vk/vulkan.h: Remove UINT8 index buffers
2015-07-07 11:26:49 -07:00
Kristian Høgsberg Kristensen
a1eea996d4
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.
2015-07-06 23:54:12 -07:00
Kristian Høgsberg Kristensen
c325bb24b5
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.
2015-07-06 22:12:26 -07:00
Chad Versace
23075bccb3
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.
2015-07-06 18:28:26 -07:00
Chad Versace
69e11adecc
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
2015-07-06 18:28:26 -07:00
Chad Versace
5b04db71ff
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.
2015-07-06 18:27:14 -07:00
Jason Ekstrand
1f1b26bceb
vk/vulkan.h: Rename VkRect to VkRect2D
2015-07-06 17:47:18 -07:00
Jason Ekstrand
63c1190e47
vk/vulkan.h: Rename count to arraySize in VkDescriptorSetLayoutBinding
2015-07-06 17:43:58 -07:00
Jason Ekstrand
65f9ccb4e7
vk/vulkan.h: Remove VK_MEMORY_PROPERTY_PREFER_HOST_LOCAL_BIT
...
We weren't doing anything with it, so this is a no-op
2015-07-06 17:33:45 -07:00