aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* intel/genxml: Add a couple of helper headersJason Ekstrand2016-02-202-0/+188
|
* genxml: Stop using unicode in the pack generatorJason Ekstrand2016-02-191-1/+1
| | | | | This causes python problems and problems when people don't have a locale set properly in their shell.
* anv: fix warning about unused width variable.Dave Airlie2016-02-191-2/+1
| | | | We don't use width outside the debug clause here.
* anv/pipeline: Fix a typo in the pipeline layout codeJason Ekstrand2016-02-181-1/+1
|
* anv/allocator: Set is_winsys_bo to false for block pool BOsJason Ekstrand2016-02-181-0/+1
|
* vulkan: fix out-of-tree buildMark Janes2016-02-181-0/+1
| | | | | | We need to be able to find the generated gen*pack.h headers. Acked-by: Jason Ekstrand <[email protected]>
* anv/pipeline: Use nir's num_images for allocating image_paramsJason Ekstrand2016-02-182-4/+6
|
* nir/gather_info: Count textures and imagesJason Ekstrand2016-02-181-0/+17
|
* anv/pipeline: Don't leak the binding mapJason Ekstrand2016-02-183-0/+8
|
* anv/formats: Don't use a compound literal to initialize a const arrayJason Ekstrand2016-02-181-2/+2
| | | | | Doing so makes older versions of GCC rather grumpy. Newere GCC fixes this, but using a compound literal isn't really gaining us anything anyway.
* Move the intel vulkan driver to src/intel/vulkanJason Ekstrand2016-02-1856-6/+5
|
* Move isl to src/intelJason Ekstrand2016-02-1827-6/+4
|
* vulkan: Move XML and generator into src/intel/genxmlJason Ekstrand2016-02-1822-33/+82
|
* anv/meta: Initialize blend state for the right attachmentKristian Høgsberg Kristensen2016-02-181-10/+11
| | | | | We were always initializing only RT 0. We need to initialize the RT we're creating the clear pipeline for.
* anv/meta: Don't use the blit ds layout in resolve codeKristian Høgsberg Kristensen2016-02-181-1/+1
|
* Delete nir_lower_samplers.cppJason Ekstrand2016-02-171-248/+0
| | | | | Somehow, in one of the merges with mesa master, the old file must have been kept when nir_lower_samplers.cpp was moved to nir_lower_samplers.c.
* anv: Gut anv_pipeline_layoutJason Ekstrand2016-02-172-97/+13
| | | | | Almost none of the data in anv_pipeline_layout is used anymore thanks to doing real layout in the pipeline itself.
* anv: Build the real pipeline layout in the pipelineKristian Høgsberg Kristensen2016-02-176-118/+201
| | | | | | | | | This gives us the chance to pack the binding table down to just what the shaders actually need. Some applications use very large descriptor sets and only ever use a handful of entries. Compacted binding tables should be much more efficient in this case. It comes at the down-side of having to re-emit binding tables every time we switch pipelines, but that's considered an acceptable cost.
* nir/spirv: Add some more capabilitiesJason Ekstrand2016-02-171-2/+9
|
* anv/pipeline: Delete out-of-bounds fragment shader outputsJason Ekstrand2016-02-171-0/+13
|
* nir: Add a helper for getting the one function from a shaderJason Ekstrand2016-02-171-0/+9
|
* nir: Add a nir_foreach_variable_safe helperJason Ekstrand2016-02-171-0/+3
|
* i965/nir: Do lower_io late for fragment shadersJason Ekstrand2016-02-173-2/+6
|
* anv/gen7_pipeline: Set WriteDisable = true if we have no color attachmentsJason Ekstrand2016-02-171-5/+5
|
* anv/gen8_pipeline: Default color attachments to WriteDisable = trueJason Ekstrand2016-02-171-0/+7
|
* anv: Pull StencilBufferWriteEnable from both sidesJason Ekstrand2016-02-171-1/+2
|
* anv: Ignore unused dimensions in vkCreateImage's anv_imageNanley Chery2016-02-171-0/+2
| | | | | | | We ignore unused dimensions in the isl surface; do the same for the resulting anv_image. Reviewed-by: Kristian Høgsberg Kristensen <[email protected]>
* spirv: Fix SpvOpFwidth, SpvOpFwidthFine and SpvOpFwidthCoarseKristian Høgsberg Kristensen2016-02-171-3/+3
| | | | | | | "Result is the same as computing the sum of the absolute values of OpDPdx and OpDPdy on P." We were doing sum of absolute values of OpDPdx of P and OpDPdx of NULL.
* anv: Remove hacky PIPE_CONTROL in vkCmdEndRenderPass()Kristian Høgsberg Kristensen2016-02-171-14/+0
| | | | | The vkCmdPipelineBarrier() command should work as intended now and we need to pull the plug on this old hack.
* anv: Rework vkCmdPipelineBarrier()Kristian Høgsberg Kristensen2016-02-171-60/+62
| | | | | | | | | | | | We don't need to look at the stage flags, as we don't really support any fine-grained, stage-level synchronization. We have to do two PIPE_CONTROLs in case we're both flushing and invalidating. Additionally, if we do end up doing two PIPE_CONTROLs, the first, flusing one also has to stall and wait for the flushing to finish, so we don't re-dirty the caches with in-flight rendering after the second PIPE_CONTROL invalidates.
* anv: Ignore unused dimensions in vkCreateImageKristian Høgsberg Kristensen2016-02-171-3/+18
| | | | | | | | | | | | | | | | We would assert on unused dimensions (eg extent.depth for VK_IMAGE_TYPE_2D) not being 1, but the specification doesn't put any constraints on those. For example, for VK_IMAGE_TYPE_1D: "If imageType is VK_IMAGE_TYPE_1D, the value of extent.width must be less than or equal to the value of VkPhysicalDeviceLimits::maxImageDimension1D, or the value of VkImageFormatProperties::maxExtent.width (as returned by vkGetPhysicalDeviceImageFormatProperties with values of format, type, tiling, usage and flags equal to those in this structure) - whichever is higher" We'll fix up the arguments to isl to keep isl strict in what it expects.
* anv: Set correct write domain on window system BOsKristian Høgsberg Kristensen2016-02-175-3/+15
| | | | | | We need to make sure GEM understands that we're writing to the BO, in case it needs to synchronize with other rings (blitter use in display server, for example).
* Revert "anv: Disable snooping for allocator pools again"Kristian Høgsberg Kristensen2016-02-161-0/+2
| | | | | | | | | | | | This reverts commit c136672c593399e831db0da8b8cc6d8a5d73c1d3. We still have the intermittent missing flush for VkEvent in certain vulkancts cases: piglit.deqp-vk.api.command_buffers.execute_large_primary piglit.deqp-vk.api.command_buffers.submit_count_non_zero, Let's reenable the snooping until we figure out the root cause.
* anv: Make driver and icd file installableKristian Høgsberg Kristensen2016-02-165-13/+39
| | | | | | | Change the name of the .so to libvulkan_intel.so and add an installable icd with the installed paths. Keep the icd file with build-tree paths, but rename to dev_icd.json to make it clear that it's for development purposes.
* anv: Revise PhysicalDeviceFeatures and remove FINISHMEKristian Høgsberg Kristensen2016-02-161-8/+8
|
* anv: pCreateInfo->pApplicationInfo parameter to vkCreateInstance may be NULLPhilipp Zabel2016-02-161-2/+4
| | | | | | | | | | Fix a NULL pointer dereference in anv_CreateInstance in case the pApplicationInfo field of the supplied VkInstanceCreateInfo structure is NULL [1]. [1] https://www.khronos.org/registry/vulkan/specs/1.0/apispec.html#VkInstanceCreateInfo Signed-off-by: Philipp Zabel <[email protected]>
* anv/icd.json: Update the ABI versionJason Ekstrand2016-02-161-1/+1
|
* anv: Pull Khronos stuff from the READMEJason Ekstrand2016-02-161-8/+1
|
* anv/genxml: Include MBO bits for gen7 and gen75Kristian Høgsberg Kristensen2016-02-153-6/+18
|
* anv: Add missing gen75_cmd_buffer_set_subpass() prototypeKristian Høgsberg Kristensen2016-02-151-0/+2
|
* anv: Bump to 1.0.3Adam Jackson2016-02-151-1/+1
| | | | | Probably this should be picked up from <vulkan.h> directly, or we should just assume that any 1.0.x is legal.
* anv/gen7: Make disabling the FS workKristian Høgsberg Kristensen2016-02-151-3/+17
| | | | | We disable the fragment shader for depth/stencil-only pipelines. This commit makes that work for gen7.
* anv: Deduplicate render pass codeKristian Høgsberg Kristensen2016-02-153-343/+179
| | | | | This lets us share the renderpass code and depth/stencil state code between gen 7 and gen 8.
* anv/gen7: Fix pipeline selection in init_device_state()Kristian Høgsberg Kristensen2016-02-151-1/+1
| | | | We need the 3D pipeline for the initial setup, not GPGPU.
* anv/gen7: Set 3DSTATE_SF depth buffer format correctlyKristian Høgsberg Kristensen2016-02-152-3/+9
| | | | | We need to pull this from the render pass information at state flush time.
* anv/gen7: Call flush_pipeline_select_3d() from CmdBeginRenderPassKristian Høgsberg Kristensen2016-02-151-0/+2
|
* anv: Share flush_pipeline_select_3d() between gen7 and gen8Kristian Høgsberg Kristensen2016-02-154-22/+23
|
* anv: Fix warning 3DSTATE_VERTEX_ELEMENTS setupKristian Høgsberg Kristensen2016-02-151-6/+7
| | | | | | This is a little more subtle. If elem_count is 0, nothing else happens in this function, so we return early to avoid warning about uninitialized 'p'.
* anv: Fix misc simple warningsKristian Høgsberg Kristensen2016-02-154-5/+8
|
* anv/meta_resolve: Set origin_upper_left on gl_FragCoordJason Ekstrand2016-02-151-0/+1
| | | | | It's required by the spec and any shaders that don't set it will be broken. I'm not really sure how multisampling was even working before...