Commit Graph

74409 Commits

Author SHA1 Message Date
Jason Ekstrand c31f926726 anv/wsi: Add the GetSurfacePresentModesKHR stub
Support has existed in the X11 and Wayland backends for a while but,
somehow, the entrypoint got missed in the API shuffle.
2015-10-13 11:47:03 -07:00
Jason Ekstrand e21ecb841c anv: Declare/validate the correct API version 2015-10-12 18:25:19 -07:00
Jason Ekstrand 0689a0f0f3 anv/device: Return VK_SUCCESS after setting pCount in QueueFamilyProperties 2015-10-10 15:25:08 -07:00
Kristian Høgsberg Kristensen fc2a66cfcd Merge ../mesa into vulkan 2015-10-08 17:20:24 -07:00
Jason Ekstrand 48a87f4ba0 anv/queue: Get rid of the serial
This was a remnant of the object tagging implementation we had at one
point.  We haven't used it for a long time so there's no good reason to
keep it around.
2015-10-08 12:16:00 -07:00
Kristian Høgsberg Kristensen c71f0d45e6 i965: Link compiler unit tests to libi965_compiler.la
We can now link the unit tests against just libi965_compiler.la. This
lets us drop a lot of DRI driver dependencies, but we still pull in all
of libmesa and more.

This also provides a few standalone users of libi965_compiler.la, which
will help us accidentally using i965_dri.so functions from the compiler.

Reviewed-by: Jason Ekstrand <jason.ekstrand@intel.com>
Signed-off-by: Kristian Høgsberg Kristensen <krh@bitplanet.net>
2015-10-08 12:15:03 -07:00
Kristian Høgsberg Kristensen 08d890d3bb i965: Break out backend compiler to its own library
This introduces a new libtool helper library, libi965_compiler.la.  This
library is moderately self-contained, but still needs to link to all of
libmesa.la among other things.

Reviewed-by: Jason Ekstrand <jason.ekstrand@intel.com>
Signed-off-by: Kristian Høgsberg Kristensen <krh@bitplanet.net>
2015-10-08 12:15:03 -07:00
Kristian Høgsberg Kristensen 9a2573e5fc i965/cs: Get max_cs_threads from brw_compiler devinfo
Reviewed-by: Jason Ekstrand <jason.ekstrand@intel.com>
Signed-off-by: Kristian Høgsberg Kristensen <krh@bitplanet.net>
2015-10-08 12:15:03 -07:00
Kristian Høgsberg Kristensen ee0f0108c8 i965: Move brw_get_shader_time_index() call out of emit functions
brw_get_shader_time_index() is all tangled up in brw_context state and
we can't call it from the compiler. Thanks the Jasons recent
refactoring, we can just get the index and pass to the emit functions
instead.

Reviewed-by: Jason Ekstrand <jason.ekstrand@intel.com>
Signed-off-by: Kristian Høgsberg Kristensen <krh@bitplanet.net>
2015-10-08 12:15:03 -07:00
Kristian Høgsberg Kristensen ffc841cae5 i965: Move brw_select_clip_planes() to brw_shader.cpp
We call this from the compiler so move it to brw_shader.cpp.

Reviewed-by: Topi Pohjolainen <topi.pohjolainen@intel.com>
Signed-off-by: Kristian Høgsberg Kristensen <krh@bitplanet.net>
2015-10-08 12:15:03 -07:00
Kristian Høgsberg Kristensen 365e5d7892 i965: Use util_next_power_of_two() for brw_get_scratch_size()
This function computes the next power of two, but at least 1024. We can
do that by bitwise or'ing in 1023 and calling util_next_power_of_two().

We use brw_get_scratch_size() from the compiler so we need it out of
brw_program.c. We could move it to brw_shader.cpp, but let's make it a
small inline function instead.

Reviewed-by: Topi Pohjolainen <topi.pohjolainen@intel.com>
Signed-off-by: Kristian Høgsberg Kristensen <krh@bitplanet.net>
2015-10-08 12:15:03 -07:00
Kristian Høgsberg Kristensen cc4683992b i965: Move brw_mark_surface_used() to brw_shader.cpp
brw_program.c won't be part of the compiler library, but we need
brw_mark_surface_used() in the compiler. Move to brw_shader.cpp.

Reviewed-by: Topi Pohjolainen <topi.pohjolainen@intel.com>
Signed-off-by: Kristian Høgsberg Kristensen <krh@bitplanet.net>
2015-10-08 12:15:03 -07:00
Kristian Høgsberg Kristensen 469d0e449b i965/cs: Split out helper for building local id payload
The initial motivation for this patch was to avoid calling
brw_cs_prog_local_id_payload_dwords() in gen7_cs_state.c from the
compiler. This commit ends up refactoring things a bit more so as to
split out the logic to build the local id payload to brw_fs.cpp. This
moves the payload building closer to the compiler code that uses the
payload layout and makes it available to other users of the compiler.

Reviewed-by: Topi Pohjolainen <topi.pohjolainen@intel.com>
Signed-off-by: Kristian Høgsberg Kristensen <krh@bitplanet.net>
2015-10-08 12:15:02 -07:00
Kristian Høgsberg Kristensen 4f33700f5a i965: Move brw_link_shader() and friends to new file brw_link.cpp
We want to use the rest of brw_shader.cpp with the rest of the compiler
without pulling in the GLSL linking code.

Reviewed-by: Topi Pohjolainen <topi.pohjolainen@intel.com>
Signed-off-by: Kristian Høgsberg Kristensen <krh@bitplanet.net>
2015-10-08 12:14:44 -07:00
Kristian Høgsberg Kristensen 99ca2256c1 i965: Configure bufmgr debug options from intel_screen.c
We need the debug flag parsing and INTEL_DEBUG in the compiler, but we
don't want the dependency on bufmgr (libdrm_intel) in there. Move to
intel_screen.c.

There are now only two lines left in brw_process_intel_debug_variable(),
but we keep it in intel_debug.h to avoid having to expose
'debug_control' as a global variable.

Reviewed-by: Topi Pohjolainen <topi.pohjolainen@intel.com>
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Signed-off-by: Kristian Høgsberg Kristensen <krh@bitplanet.net>
2015-10-08 12:13:31 -07:00
Kristian Høgsberg Kristensen 04158fb0f6 util: Move DRI parse_debug_string() to util
We want to use intel_debug.c in code that doesn't link to dri common.

v2: Remove unnecessary stddef.h include (Topi), use util/debug.h
    in all DRI driver and remove driParseDebugString() (Iago).

Reviewed-by: Topi Pohjolainen <topi.pohjolainen@intel.com>
Signed-off-by: Kristian Høgsberg Kristensen <krh@bitplanet.net>
2015-10-08 12:13:31 -07:00
Kristian Høgsberg Kristensen ba71d581ae i965: Move brw_dump_ir() out of brw_*_emit() functions
We move these calls one level up into the codegen functions.

Reviewed-by: Topi Pohjolainen <topi.pohjolainen@intel.com>
Signed-off-by: Kristian Høgsberg Kristensen <krh@bitplanet.net>
2015-10-08 12:13:31 -07:00
Jason Ekstrand 8984559892 vk/0.170.2: Update to the new VK_EXT_KHR_swapchain extensions 2015-10-08 12:11:18 -07:00
Emil Velikov 1fda56cdb2 gallium/ddebug: add missing dd_util.h to sources list
Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
2015-10-08 18:13:24 +01:00
Emil Velikov 62741ff052 gallium/ddebug: automake: sort sources alphabetically
Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
2015-10-08 18:13:24 +01:00
Jason Ekstrand 9c528f5dfa nir/sweep: Reparent the shader name
Previously the name of the nir shader was being freed prematurely during
nir_sweep. Since 756613ed35 the name was later being used to generate
filenames for the optimiser debug output and these would end up with
garbage from the dangling pointer.

Co-authored-by: Neil Roberts <neil@linux.intel.com>
Reviewed-by: Matt Turner <mattst88@gmail.com>
2015-10-08 08:20:31 -07:00
Jan Vesely c8031a879a c11/threads: initialize timeout structure
Signed-off-by: Jan Vesely <jano.vesely@gmail.com>
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
2015-10-08 14:05:57 +01:00
Boyan Ding 89ae41ab4c docs/relnotes: document EGL_KHR_create_context on llvmpipe and softpipe
Signed-off-by: Boyan Ding <boyan.j.ding@gmail.com>
2015-10-08 14:05:36 +01:00
Iago Toral Quiroga 1efbb8151b i965/gs/gen6: Maximum allowed size of SEND messages is 15 (4 bits)
Comit d48ac93066 addressed this for VS, but we forgot to do the same for
URB writes generated by the gen6 GS.

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
2015-10-08 11:28:16 +02:00
Iago Toral Quiroga 3141906fa3 i965: Define FIRST_SPILL_MRF and FIRST_PULL_LOAD_MRF only once and in one place
That should make tracking where we do spills and pull loads a bit easier.

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
2015-10-08 11:28:16 +02:00
Iago Toral Quiroga 36e82b137d i965: make pull constant loads in gen6 start at MRFs 16/17
So they do not conflict with our (un)spills (MRF 21..23) or our
URB writes (MRF 1..15)

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
2015-10-08 11:28:16 +02:00
Iago Toral Quiroga 0c2add7751 i965: Fix remove_duplicate_mrf_writes so it can handle 24 MRFs in gen6
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
2015-10-08 11:28:16 +02:00
Tapani Pälli aee28a0aa3 mesa: include bad type in error string of _mesa_pack_depth_span
Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
2015-10-08 09:25:16 +03:00
Tapani Pälli 4e7fd66cf0 glsl: add varyings to resource list only with SSO
Varyings can be considered inputs or outputs of a program only when
SSO is in use. With multi-stage programs, inputs contain only inputs
for first stage and outputs contains outputs of the final shader stage.

I've tested that fix works for Assault Android Cactus (demo version)
and does not cause Piglit or CTS regressions in glGetProgramiv tests.

Following ES 3.1 CTS separate shader tests that do query properties
of varyings in SSO shader programs pass:

   ES31-CTS.program_interface_query.separate-programs-vertex
   ES31-CTS.program_interface_query.separate-programs-fragment

Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Tested-by: Dieter Nützel <Dieter@nuetzel-hh.de>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=92122
2015-10-08 07:43:11 +03:00
Jason Ekstrand 6ad9ebb073 mesa: Correctly handle GL_BGRA_EXT in ES3 format_and_type checks
The EXT_texture_format_BGRA8888 extension (which mesa supports
unconditionally) adds a new format and internal format called GL_BGRA_EXT.
Previously, this was not really handled at all in
_mesa_ex3_error_check_format_and_type.  When the checks were tightened in
commit f15a7f3c, we accidentally tightened things too far and GL_BGRA_EXT
would always cause an error to be thrown.

There were two primary issues here.  First, is that
_mesa_es3_effective_internal_format_for_format_and_type didn't handle the
GL_BGRA_EXT format.  Second is that it blindly uses _mesa_base_tex_format
which returns GL_RGBA for GL_BGRA_EXT.  This commit fixes both of these
issues as well as adds explicit checks that GL_BGRA_EXT is only ever used
with GL_BGRA_EXT and GL_UNSIGNED_BYTE.

Signed-off-by: Jason Ekstrand <jason.ekstrand@intel.com>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=92265
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Cc: "11.0" <mesa-stable@lists.freedesktop.org>
2015-10-07 20:32:53 -07:00
Emil Velikov bbf728f11b Revert "mesa: enable KHR_debug for ES contexts"
This reverts commit b69cfbdf18.

This isn't quite baked yet. Seems that despite building the ES piglits,
none of them got executed.
2015-10-07 21:49:50 +01:00
Chad Versace 2228ec0112 Merge branch 'vulkan-0.170.2' into vulkan
This updates the API from 0.138.2 to 0.170.2,
and updates SPIR-V to v32.
2015-10-07 11:49:07 -07:00
Matt Turner 164c8277f0 egl/dri2: Properly dereference array.
Fixes a regression that broke EGL since

commit 858f2f2ae6
Author: Emil Velikov <emil.l.velikov@gmail.com>
Date:   Sun Sep 13 12:25:27 2015 +0100

    egl/dri2: ease srgb __DRIconfig conditionals
2015-10-07 11:48:49 -07:00
Chad Versace 7fa98ab182 vk: Remove temporary vulkan headers
Remove vulkan-0.138.2.h and vulkan-0.170.2.h. Their purpose was to aid
the header update to 0.170.2.
2015-10-07 11:45:48 -07:00
Chad Versace 2f1ca71360 vk/0.170.2: Bump header version
The header is now fully updated.
2015-10-07 11:44:44 -07:00
Chad Versace c2f94e3a0d vk/0.170.2: Update C++ errata and typedefs 2015-10-07 11:44:33 -07:00
Chad Versace 0ca3c8480d vk/0.170.2: Update remaining enums 2015-10-07 11:39:49 -07:00
Chad Versace f9c948ed00 vk/0.170.2: Update VkResult
Version 0.170.2 removes most of the error enums. In many cases, I had to
replace an error with a less accurate (or even incorrect) one.
In other cases, the error path is replaced with an assertion.
2015-10-07 11:36:51 -07:00
Chad Versace 8dee32e71f vk/0.170: Update VkDescriptorInfo
Ignore the new bufferInfo field with a anv_finishme.
2015-10-07 10:58:55 -07:00
Chad Versace 92e7bd3610 vk/0.170.2: Update vkCreateDescriptorPool
Nothing to do. In Mesa the pool is a stub.
2015-10-07 10:47:55 -07:00
Chad Versace a3bc07c23b vk/0.170.2: Update VkAttachmentDescription 2015-10-07 10:44:40 -07:00
Chad Versace 82259f88dd vk/0.170.2: Update VkImageViewCreateInfo 2015-10-07 10:43:44 -07:00
Chad Versace f4295b3cca vk/0.170.2: Update VkImageCreateInfo 2015-10-07 10:43:17 -07:00
Chad Versace d48e71ce55 vk/0.170.2: Update VkPhysicalDeviceProperties 2015-10-07 10:36:46 -07:00
Chad Versace 81e1dcc42c vk/0.170.2: Update VkImageFormatProperties 2015-10-07 10:28:30 -07:00
Marek Olšák 13e69805ea radeonsi: fix a GS hang on VI
Broken by one of the cleanups: 0d46c3bc9d
Not applicable to stable.

Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
2015-10-07 19:18:50 +02:00
Marek Olšák 5749676d03 radeonsi: remove TC L2 cache flush for index buffers on VI
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
2015-10-07 19:18:50 +02:00
Chad Versace 98c2bb6917 vk/0.170.2: Update VkFormatProperties 2015-10-07 10:15:59 -07:00
Chad Versace 545f5cc6e1 vk/0.170.2: Update VkPhysicalDeviceFeatures 2015-10-07 10:09:39 -07:00
Chad Versace 033a37f591 vk/0.170.2: Update VkPhysicalDeviceLimits 2015-10-07 10:09:31 -07:00