Erik Faye-Lund [Wed, 3 Feb 2021 12:13:25 +0000 (13:13 +0100)]
docs: dfsm -> DFSM
This abberation is spelled in all-caps other places in this document.
Acked-by: Matt Turner <mattst88@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9946>
Erik Faye-Lund [Wed, 3 Feb 2021 11:11:10 +0000 (12:11 +0100)]
docs: lex / yacc -> Lex / Yacc
These are names, so use proper nouns for them.
Acked-by: Matt Turner <mattst88@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9946>
Erik Faye-Lund [Wed, 3 Feb 2021 10:59:34 +0000 (11:59 +0100)]
docs: lod -> LOD
While we're at it, fix a few cases of incorrect usage of apostrophes.
Acked-by: Matt Turner <mattst88@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9946>
Erik Faye-Lund [Wed, 28 Oct 2020 14:07:05 +0000 (15:07 +0100)]
docs: nops -> NOPs
Acked-by: Matt Turner <mattst88@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9946>
Erik Faye-Lund [Wed, 3 Feb 2021 12:50:20 +0000 (13:50 +0100)]
docs: Xorg -> X.Org
Acked-by: Matt Turner <mattst88@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9946>
Erik Faye-Lund [Wed, 3 Feb 2021 10:55:51 +0000 (11:55 +0100)]
docs: opencl -> OpenCL
Acked-by: Matt Turner <mattst88@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9946>
Erik Faye-Lund [Wed, 28 Oct 2020 10:53:30 +0000 (11:53 +0100)]
docs: optimisation -> optimization
We generally prefer US English in the docs over UK English.
Acked-by: Matt Turner <mattst88@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8572>
Samuel Pitoiset [Tue, 30 Mar 2021 15:55:10 +0000 (17:55 +0200)]
radv: only set WRITE_COMPRESS_ENABLE for storage image descriptors
This will allow us to reduce the number of situations where the
compiler workaround is needed on GFX10.3.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9924>
Danylo Piliaiev [Wed, 24 Mar 2021 12:09:56 +0000 (14:09 +0200)]
ir3/isa: account for randomly set by blob lowest bit of ibo atomics
As far as I could see - blob randomly sets the lowest bit of atomic.b.*
instructions.
Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9841>
Adam Jackson [Tue, 30 Mar 2021 14:58:05 +0000 (10:58 -0400)]
ci: Bump the llvmpipe test timeout to 240 seconds
lp_test_blend occasionally exceeds this on s390x, but we don't really
want to lose what little (hah) big-endian coverage we have.
Related: mesa/mesa#3437
Acked-by: Daniel Stone <daniels@collabora.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Reviewed-by: Michel Dänzer <mdaenzer@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9921>
Erik Faye-Lund [Wed, 31 Mar 2021 13:45:11 +0000 (15:45 +0200)]
zink: do not request scoped memory barriers
While barriers in Vulkan are scoped, we do not handle
nir_intrinsic_scoped_barrier, so we do not support them from NIR.
The reason why this hasn't been a problem seems to be that VTN is the
only place that respects them, so we haven't seen them yet.
But if the GLSL compiler starts respecting the setting, things will
start blowing up. There's WIP patches for this in !3339 already.
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9949>
Mike Blumenkrantz [Thu, 28 Jan 2021 16:52:42 +0000 (11:52 -0500)]
radv: don't reset vertex state params on pipeline bind if reg layout matches
this is unnecessary since the locations will match
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8788>
Mike Blumenkrantz [Wed, 27 Jan 2021 22:06:24 +0000 (17:06 -0500)]
radv: don't emit baseinstance and drawid if neither is used
indirect draw dispatch contributed by Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8788>
Mike Blumenkrantz [Fri, 5 Feb 2021 18:23:59 +0000 (13:23 -0500)]
radv: reorder vertex shader params
put baseinstance last since it's the least updated
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8788>
Mike Blumenkrantz [Fri, 5 Feb 2021 18:20:37 +0000 (13:20 -0500)]
radv: make vertex param sgpr count more explicit
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8788>
Mike Blumenkrantz [Fri, 5 Feb 2021 18:17:27 +0000 (13:17 -0500)]
radv: break out vertex shader param emission into separate function
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8788>
Mike Blumenkrantz [Tue, 9 Feb 2021 14:14:07 +0000 (09:14 -0500)]
radv: track whether baseinstance is used on the pipeline struct
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8788>
Mike Blumenkrantz [Fri, 5 Feb 2021 18:15:19 +0000 (13:15 -0500)]
radv: track whether drawid is used on the pipeline struct
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8788>
Mike Blumenkrantz [Fri, 5 Feb 2021 18:13:58 +0000 (13:13 -0500)]
radv: set gfx pipeline vtx_emit_num to the number of sgprs
this should always match what we want to be doing
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8788>
Mike Blumenkrantz [Fri, 5 Feb 2021 16:29:03 +0000 (11:29 -0500)]
radv: simplify vs draw param counting during setup
we can just reuse the existing function for this
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8788>
Mike Blumenkrantz [Wed, 27 Jan 2021 22:05:30 +0000 (17:05 -0500)]
radv: track whether gl_BaseInstance is used
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8788>
Mike Blumenkrantz [Wed, 27 Jan 2021 20:19:49 +0000 (15:19 -0500)]
radv: refactor draw dispatch
this breaks up the monolithic draw path used for all draw calls into
pre/post functions to handle general setup and a couple helper functions
to more directly handle different draw modes in a way that's both more readable
and, potentially, more optimizable
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8788>
Mike Blumenkrantz [Wed, 27 Jan 2021 20:18:22 +0000 (15:18 -0500)]
radv: stop zeroing radv_draw_info during draw
this is a big struct, and there's only a couple extra members that need
to be initialized to hit the right codepaths
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8788>
Danylo Piliaiev [Thu, 24 Dec 2020 19:12:38 +0000 (21:12 +0200)]
freedreno/a6xx: fix primitive counters debug output
Each counter spans two regs: LO and HI
Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8228>
Danylo Piliaiev [Thu, 4 Feb 2021 13:42:28 +0000 (15:42 +0200)]
freedreno/a6xx: copy full 64bit of primitive counter
Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8228>
Alyssa Rosenzweig [Sat, 6 Feb 2021 01:16:00 +0000 (20:16 -0500)]
meson: Remove kmsro from gallium-drivers
Automatically include it if we're building with a driver that depends on
it, and don't include it if we're not. Avoids a footgun (building
something like panfrost without kmsro) with minimal effect on code size
in the "kmsro possible but not used" case. (This case primarily affects
Freedreno, but the Freedreno maintainers suggested this, so I think it's
ok.)
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com>
Suggested-by: Rob Clark <robdclark@chromium.org>
Reviewed-by: Dylan Baker <dylan.c.baker@intel.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8893>
Juan A. Suarez Romero [Wed, 31 Mar 2021 08:48:49 +0000 (10:48 +0200)]
broadcom/cle: do not leak spec
Fixes CID#1474553 "Resource leak (RESOURCE_LEAK)".
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9944>
Erik Faye-Lund [Wed, 28 Oct 2020 11:13:09 +0000 (12:13 +0100)]
docs: vulkan -> Vulkan
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9945>
Erik Faye-Lund [Wed, 28 Oct 2020 11:18:30 +0000 (12:18 +0100)]
docs: ie. -> i.e.
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9945>
Erik Faye-Lund [Wed, 28 Oct 2020 11:08:45 +0000 (12:08 +0100)]
docs: sytem -> system
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9945>
Erik Faye-Lund [Wed, 28 Oct 2020 10:48:31 +0000 (11:48 +0100)]
docs: appling -> applying
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9945>
Erik Faye-Lund [Mon, 29 Mar 2021 14:37:14 +0000 (16:37 +0200)]
zink: document why we're calling pipe_shader_type_from_mesa
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9898>
Erik Faye-Lund [Mon, 29 Mar 2021 14:32:08 +0000 (16:32 +0200)]
zink: simplify shader-removal
This is so trivial to do, so there's no need for the helper.
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9898>
Erik Faye-Lund [Mon, 29 Mar 2021 13:24:31 +0000 (15:24 +0200)]
zink: assert that pstage is within range
This makes it clearer that these don't include the compute-stage.
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9898>
Erik Faye-Lund [Tue, 30 Mar 2021 15:58:31 +0000 (17:58 +0200)]
zink: check base-requirements
This one is a bit of a tough nut to deal with gracefully. Zink has a set
of base-requirements that we always require. There's no Gallium caps to
report these missing features, so we're essentially left with two options:
1. Fail to create the screen.
2. Ignore the missing fetures.
Solution 1 will lead to difficulties bringing up a new Vulkan driver on
Zink, and solution 2 will lead to mis-rendering.
Since Zink is mostly an opt-in driver to use when there's no OpenGL driver
available, we should probably do 2 for now. It seems better to have some
mis-rendering than no rendering at all.
But let's at least check, and print a warning. That way people get to
know what's up.
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9925>
Erik Faye-Lund [Tue, 30 Mar 2021 15:57:56 +0000 (17:57 +0200)]
docs: clarify VK_KHR_external_memory requirement
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9925>
Erik Faye-Lund [Tue, 30 Mar 2021 15:51:47 +0000 (17:51 +0200)]
zink: do not enable unused extension
While we should probably use this extension at some point, we don't
currently do. So let's remove it, so the code documents the status-quo
instead of some potential future direction.
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9925>
Erik Faye-Lund [Tue, 30 Mar 2021 15:41:09 +0000 (17:41 +0200)]
docs: remove zink incorrect requirement
Zink does not require VK_KHR_get_physical_device_properties2; we have
fallback-code in place for when that is lacking.
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9925>
Erik Faye-Lund [Tue, 30 Mar 2021 15:16:47 +0000 (17:16 +0200)]
docs: remove bogus zink-requirement
VkPhysicalDeviceFeatures::depthClamp isn't required until GL 3.2, where
we already list it. Remove the extra entry to avoid confusion.
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9925>
Juan A. Suarez Romero [Tue, 30 Mar 2021 15:54:39 +0000 (17:54 +0200)]
ci/v3dv: update flaky tests
Acked-by: Adam Jackson <ajax@redhat.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9926>
Tapani Pälli [Mon, 29 Mar 2021 07:13:19 +0000 (10:13 +0300)]
loader: prefer iris on Android
Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9906>
Iago Toral Quiroga [Tue, 30 Mar 2021 08:58:04 +0000 (10:58 +0200)]
broadcom/compiler: try to fill up delay slots after unconditional branch
If we have an unconditional branch then we can try to fill up its
delay slots with the initial instructions of its successor block by
copying them into the delay slots and adjusting the branch offset to
skip the copied instructions.
total nops in shared programs: 365640 -> 364471 (-0.32%)
nops in affected programs: 15416 -> 14247 (-7.58%)
helped: 462
HURT: 0
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9918>
Iago Toral Quiroga [Mon, 29 Mar 2021 12:28:14 +0000 (14:28 +0200)]
broadcom/compiler: try to fill up delay slots after a branch instruction
For this we do something similar to what we do with thrsw where we try to
move the branch instruction earlier so the previous instructions execute
in the delay slots of the branch.
Generally, we can do this with any instruction except:
- If the instruction reads a uniform: since our branches do as well and
uniforms come from an ordered FIFO stream.
- If the instruction writes flags, since our branch instruction will
probably read them.
- If the instruction is in the delay slots of another thread switch,
branch, or unifa write, which is disallowed.
total instructions in shared programs:
13648140 ->
13613972 (-0.25%)
instructions in affected programs: 2209552 -> 2175384 (-1.55%)
helped: 6765
HURT: 0
Instructions are helped.
total max-temps in shared programs: 2318687 -> 2318436 (-0.01%)
max-temps in affected programs: 5046 -> 4795 (-4.97%)
helped: 152
HURT: 0
Max-temps are helped.
total inst-and-stalls in shared programs:
13680494 ->
13646326 (-0.25%)
inst-and-stalls in affected programs: 2220394 -> 2186226 (-1.54%)
helped: 6765
HURT: 0
Inst-and-stalls are helped.
total nops in shared programs: 399818 -> 365640 (-8.55%)
nops in affected programs: 127311 -> 93133 (-26.85%)
helped: 6765
HURT: 0
Nops are helped.
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9918>
Iago Toral Quiroga [Tue, 30 Mar 2021 09:48:10 +0000 (11:48 +0200)]
broadcom/compiler: add a NOP count stat to shader-db
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9918>
Iago Toral Quiroga [Tue, 30 Mar 2021 08:30:22 +0000 (10:30 +0200)]
broadcom/compiler: dump instruction index when failing to pack instructions
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9918>
Dave Airlie [Wed, 31 Mar 2021 00:25:13 +0000 (10:25 +1000)]
lavapipe: fail out if spirv->nir fails
Just fail out earlier and assume a feature is missing.
Fixes a crash in validation layer tests
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9937>
Dave Airlie [Wed, 31 Mar 2021 00:24:36 +0000 (10:24 +1000)]
lavapipe: only reference pCounterBuffers if non-NULL
Fixes crash in validation layer tests.
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9937>
Vinson Lee [Thu, 3 Dec 2020 23:52:34 +0000 (15:52 -0800)]
glsl: Initialize parcel_out_uniform_storage members.
Fix defects reported by Coverity Scan.
uninit_member: Non-static class member buffer_block_index is not initialized in this constructor nor in any functions that it calls.
uninit_member: Non-static class member ubo_byte_offset is not initialized in this constructor nor in any functions that it calls.
uninit_member: Non-static class member shader_type is not initialized in this constructor nor in any functions that it calls.
uninit_member: Non-static class member next_sampler is not initialized in this constructor nor in any functions that it calls.
uninit_member: Non-static class member next_bindless_sampler is not initialized in this constructor nor in any functions that it calls.
uninit_member: Non-static class member next_image is not initialized in this constructor nor in any functions that it calls.
uninit_member: Non-static class member next_bindless_image is not initialized in this constructor nor in any functions that it calls.
uninit_member: Non-static class member next_subroutine is not initialized in this constructor nor in any functions that it calls.
uninit_member: Non-static class member field_counter is not initialized in this constructor nor in any functions that it calls.
uninit_member: Non-static class member current_var is not initialized in this constructor nor in any functions that it calls.
uninit_member: Non-static class member explicit_location is not initialized in this constructor nor in any functions that it calls.
uninit_member: Non-static class member record_array_count is not initialized in this constructor nor in any functions that it calls.
uninit_member: Non-static class member record_next_sampler is not initialized in this constructor nor in any functions that it calls.
uninit_member: Non-static class member record_next_image is not initialized in this constructor nor in any functions that it calls.
uninit_member: Non-static class member record_next_bindless_sampler is not initialized in this constructor nor in any functions that it calls.
uninit_member: Non-static class member record_next_bindless_image is not initialized in this constructor nor in any functions that it calls.
uninit_member: Non-static class member targets is not initialized in this constructor nor in any functions that it calls.
uninit_member: Non-static class member shader_samplers_used is not initialized in this constructor nor in any functions that it calls.
uninit_member: Non-static class member shader_shadow_samplers is not initialized in this constructor nor in any functions that it calls.
uninit_member: Non-static class member num_bindless_samplers is not initialized in this constructor nor in any functions that it calls.
uninit_member: Non-static class member num_bindless_images is not initialized in this constructor nor in any functions that it calls.
Signed-off-by: Vinson Lee <vlee@freedesktop.org>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7910>
Mike Blumenkrantz [Thu, 10 Dec 2020 21:25:47 +0000 (16:25 -0500)]
zink: use cached memory for all resources when possible
this massively speeds up memory access across the driver, specifically
for pbo-related operations
it does require that mapped memory is manually invalidated/flushed, however, and
we also need to manually align host-visible memory to be able to do that
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9884>
Mike Blumenkrantz [Thu, 25 Feb 2021 17:33:11 +0000 (12:33 -0500)]
zink: track coherent resource objects
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9884>
Adam Jackson [Wed, 24 Mar 2021 17:45:20 +0000 (13:45 -0400)]
mesa: Remove redundant gl_config::sampleBuffers
This is just !!samples.
Reviewed-by: Eric Anholt <eric@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9817>
Adam Jackson [Wed, 24 Mar 2021 16:48:21 +0000 (12:48 -0400)]
mesa: Stop tracking visual rating in gl_config
We never create non-conformant configs, and we can predict slow-or-not
purely from the accum-buffer-ness of the config.
Reviewed-by: Eric Anholt <eric@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9817>
Adam Jackson [Wed, 24 Mar 2021 16:40:51 +0000 (12:40 -0400)]
mesa: Remove the pretense of aux buffer support
This might be nice to hook up at some point, but it's doing nothing at
the moment and it's not clear to me that it belongs as GL state instead
of winsys state.
Reviewed-by: Eric Anholt <eric@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9817>
Adam Jackson [Wed, 24 Mar 2021 16:29:02 +0000 (12:29 -0400)]
mesa: Remove unused gl_config::level
This is the (GLX) framebuffer overlay level, and it's never set to
anything interesting.
Reviewed-by: Eric Anholt <eric@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9817>
Adam Jackson [Wed, 24 Mar 2021 16:16:51 +0000 (12:16 -0400)]
mesa: Remove transparency state from struct gl_config
We never set this to anything interesting, and this is really winsys
state not GL state anyway.
Nota bene: __DRI_ATTRIB_TRANSPARENT_INDEX_VALUE is set to GLX_NONE
instead of the GLX_DONT_CARE we looked like we were doing before. This
is to preserve backward compatibility with older (technically, all
current) X servers, which when building their fbconfigs initialize a
field named 'transparentPixel' _twice_, and the second time from
__DRI_ATTRIB_TRANSPARENT_INDEX_VALUE, but then uses 'transparentPixel's
value for GLX_TRANSPARENT_TYPE. Which, GLX_DONT_CARE isn't a valid value
for that, so glx-fbconfig-sanity fails among much else.
This is harmless, in that I don't think any DRI driver has ever wired
this up (I can't find any evidence in r100 or mga history) and certainly
none that we can currently load have this working.
Reviewed-by: Eric Anholt <eric@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9817>
Adam Jackson [Wed, 24 Mar 2021 15:57:11 +0000 (11:57 -0400)]
mesa: Remove the texture-from-pixmap state from struct gl_config
This never varies at all, let alone per-config. GLX does read these
values out though so hardwire the values in a different place.
Reviewed-by: Eric Anholt <eric@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9817>
Adam Jackson [Tue, 23 Mar 2021 17:15:50 +0000 (13:15 -0400)]
mesa: Remove misc pbuffer attributes from struct gl_config
pbuffers aren't a first-class object in mesa, they're just funnily-named
framebuffers. It's thus somewhat silly to track this state separately
when it's effectively identical to GL_MAX_RENDERBUFFER_SIZE, and there's
never been a DRI driver that's ever set these values to anything
interesting. Drop them from mesa (but leave the tokens defined for
compatibility).
Reviewed-by: Eric Anholt <eric@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9817>
Adam Jackson [Sat, 27 Mar 2021 02:34:17 +0000 (22:34 -0400)]
dri: Fold attribMap into the code
This table is mostly a mapping into struct gl_config, which is about to
get radically simplified, so we're going to need code to compute values
here instead of just looking up fields in a struct. Keeping the __ATTRIB
bit is somewhat ugly, but we'll expand it back out after the gl_config
changes settle.
Reviewed-by: Eric Anholt <eric@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9817>
Adam Jackson [Fri, 26 Mar 2021 19:52:26 +0000 (15:52 -0400)]
dri: Explicitly handle all the config attributes
The code is broken elsewhere and requires that the attrib map actually
be large enough.
Reviewed-by: Eric Anholt <eric@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9817>
Matt Turner [Sun, 21 Mar 2021 17:27:57 +0000 (13:27 -0400)]
Remove Scons leftovers
Fixes:
6e6cd7d93cc54fc8c279 ("scons: Remove.")
Reviewed-by: Eric Engestrom <eric@engestrom.ch>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9738>
Matt Turner [Tue, 30 Mar 2021 19:38:37 +0000 (15:38 -0400)]
ci: Disable panfrost g52
The runners appear to be down at the moment.
Fixes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/4538
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9930>
Tony Wasserka [Mon, 29 Mar 2021 11:17:50 +0000 (13:17 +0200)]
ci: skip pipeline_barrier tests that currently crash on RADV
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/4511
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9893>
Boyuan Zhang [Mon, 15 Mar 2021 17:28:11 +0000 (13:28 -0400)]
frontends/omx/h265: search entire dpb list
When more than 1 idr frames have been added to dpb list, there might be 2
frames with same poc in the dpb list. In this case, driver needs to search
the entire dpb list in order to get newly added reference frame with given poc
Signed-off-by: Boyuan Zhang <boyuan.zhang@amd.com>
Reviewed-by: Leo Liu <leo.liu@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9881>
Ruijing Dong [Fri, 5 Mar 2021 15:39:51 +0000 (10:39 -0500)]
radeon/vcn: release si buffer for encoding at the end.
Signed-off-by: Ruijing Dong <Ruijing.Dong@amd.com>
Reviewed-by: Leo Liu <leo.liu@amd.com>
Reviewed-by: Boyuan Zhang <Boyuan.Zhang@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9882>
Erik Faye-Lund [Mon, 29 Mar 2021 11:21:47 +0000 (13:21 +0200)]
compiler/glsl: avoid null-pointer deref
When we encounter a bindless image here, lower_deref returns a
NULL-pointer, and calling record_images_used will try to dereference
that NULL-pointer.
So let's dig out the var from the source instruction instead of the
result of the lowering.
Fixes:
5910c938a29 ("nir/glsl: gather bitmask of images used by program")
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9895>
Mike Blumenkrantz [Mon, 22 Mar 2021 17:58:37 +0000 (13:58 -0400)]
zink: remove zink_create_fence()
merge this down into batch state creation to keep fence file complexity down
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9885>
Mike Blumenkrantz [Mon, 22 Mar 2021 15:39:21 +0000 (11:39 -0400)]
zink: also check for device lost reset on flush
if there's a reset callback available, call that instead of cycling
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9885>
Mike Blumenkrantz [Mon, 22 Mar 2021 15:36:18 +0000 (11:36 -0400)]
zink: break out queue submit into separate functions
to be used with async submission
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9885>
Mike Blumenkrantz [Mon, 22 Mar 2021 15:33:38 +0000 (11:33 -0400)]
zink: move VkQueue to batch object
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9885>
Mike Blumenkrantz [Mon, 22 Mar 2021 15:28:07 +0000 (11:28 -0400)]
zink: remove zink_fence_init()
contents moved to more correct places
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9885>
Mike Blumenkrantz [Mon, 22 Mar 2021 15:18:36 +0000 (11:18 -0400)]
zink: make a local screen pointer in zink_flush
no functional changes
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9885>
Mike Blumenkrantz [Mon, 22 Mar 2021 15:09:18 +0000 (11:09 -0400)]
zink: store context to batch state
this will be used for post-flush device resets when device is lost
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9885>
Mike Blumenkrantz [Mon, 22 Mar 2021 15:05:19 +0000 (11:05 -0400)]
zink: rename init_batch_state to get_batch_state
more sensible, no functional changes
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9885>
Mike Blumenkrantz [Mon, 29 Mar 2021 03:34:28 +0000 (23:34 -0400)]
zink: assume fence has already completed if a batch state isn't found
we're not going to be waiting on fences from the future, so if we can't
find a fence then it must have completed
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9885>
Mike Blumenkrantz [Mon, 22 Mar 2021 14:58:26 +0000 (10:58 -0400)]
zink: explicitly reset a couple more batch state members
no functional changes at this time
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9885>
Mike Blumenkrantz [Mon, 22 Mar 2021 14:54:14 +0000 (10:54 -0400)]
zink: add locking for fence resources
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9885>
Mike Blumenkrantz [Mon, 22 Mar 2021 14:39:42 +0000 (10:39 -0400)]
zink: split fence finish func
one part of this will be used to handle tc mechanics, the other part is for
internal use
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9885>
Mike Blumenkrantz [Mon, 22 Mar 2021 14:33:34 +0000 (10:33 -0400)]
zink: add function for checking whether a batch is done
this is like wait_on_batch, but without the waiting
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9885>
Mike Blumenkrantz [Mon, 22 Mar 2021 14:27:50 +0000 (10:27 -0400)]
zink: add locking for batch states
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9885>
Mike Blumenkrantz [Wed, 6 Jan 2021 18:05:41 +0000 (13:05 -0500)]
zink: manually invoke cpu detection during screen init
ensure this gets populated before using it
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9885>
Mike Blumenkrantz [Fri, 25 Dec 2020 00:43:10 +0000 (19:43 -0500)]
zink: add locking for resource maps
vulkan prohibits multiple maps on a resource, so these have to be locked
down
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9885>
Mike Blumenkrantz [Wed, 23 Dec 2020 20:28:52 +0000 (15:28 -0500)]
zink: add locking for descriptor pools
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9885>
Juan A. Suarez Romero [Tue, 30 Mar 2021 09:00:01 +0000 (11:00 +0200)]
v3dv: fix unused value
Do not assign to a variable that won't be used.
Fixes CID#1468098 "Unused value (UNUSED_VALUE)".
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9910>
Juan A. Suarez Romero [Tue, 30 Mar 2021 08:57:15 +0000 (10:57 +0200)]
broadcom/compiler: fix unused value
Do not assign to a variable that won't be used.
Fixes CID#1451708 and CID#1451710 "Unused value (UNUSED_VALUE)".
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9910>
Erik Faye-Lund [Tue, 30 Mar 2021 10:42:13 +0000 (12:42 +0200)]
docs: do not try to copy missing file
This file was removed, but the inclusion in the docs build was missed.
Fixes:
6e6cd7d93cc ("scons: Remove.")
Acked-by: Daniel Stone <daniels@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9913>
Samuel Pitoiset [Tue, 30 Mar 2021 07:50:24 +0000 (09:50 +0200)]
radv: do not fixup DCC after compute color resolves if DCC stores enabled
With compressed DCC writes supported, the image should still be
compressed after resolving using the compute path.
Fixes various dEQP-VK.api.copy_and_blit.core.resolve_image.*
failures with RADV_DEBUG=forcecompress on GFX10.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9908>
Erik Faye-Lund [Mon, 29 Mar 2021 08:42:11 +0000 (10:42 +0200)]
lavapipe: report correct value for maxTexelBufferElements
We already have a pipe_cap for this, so let's use that to report the
correct value.
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9891>
Juan A. Suarez Romero [Mon, 29 Mar 2021 14:41:59 +0000 (16:41 +0200)]
ci/v3d: run full GLES3 and GLES31 testsuite
There is margin in the time budget to run the full GLES3 and GLES31 CTS
instead of only 50%.
Reviewed-by: Eric Anholt <eric@anholt.net>
Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9899>
Juan A. Suarez Romero [Mon, 29 Mar 2021 14:36:36 +0000 (16:36 +0200)]
ci/broadcom: update piglit expected results
Reviewed-by: Eric Anholt <eric@anholt.net>
Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9899>
Marcin Ślusarz [Thu, 25 Mar 2021 16:29:11 +0000 (17:29 +0100)]
iris: disable dynamic VAO fastpath on GFX version 9
Enabling this fast path, while making CPU side simpler
(and thus reducing driver's CPU overhead), forces us to
generate multiple VERTEX_BUFFER_STATE packets pointing to
the same buffer, but with slightly shifted BufferStartingAddress.
This is fine on GFX version >= 11 and < 8, but on version
8 and 9, thanks to internal details of the VF cache, vertex
data from each VERTEX_BUFFER_STATE is cached separately
and this results in a lot of cache misses.
Disabling this fast path restores previous performance levels.
On my SKL GT2 machine this improves performance in:
- GLB27 Egypt offscreen by 37%
- GLB27 TRex offscreen by 22%
- gfxbench5 Manhattan offscreen by 1.75%
- gfxbench5 Manhattan31 offscreen by 1.9%
- gfxbench5 Aztec Ruins high by 2.3%
In Intel performance CI on GFX version 9 it improves performance in:
- gfxbench5 Manhattan offscreen by 1.65%
- gfxbench5 Aztec Ruins normal offscreen by 1.33%
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/3277
Fixes:
42842306d3c ("mesa,st/mesa: add a fast path for non-static VAOs")
Signed-off-by: Marcin Ślusarz <marcin.slusarz@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9857>
Marcin Ślusarz [Mon, 8 Mar 2021 11:30:58 +0000 (12:30 +0100)]
gallium: add PIPE_CAP_ALLOW_DYNAMIC_VAO_FASTPATH
Fixes:
42842306d3c ("mesa,st/mesa: add a fast path for non-static VAOs")
Signed-off-by: Marcin Ślusarz <marcin.slusarz@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9857>
Mike Blumenkrantz [Thu, 10 Dec 2020 16:13:23 +0000 (11:13 -0500)]
zink: rework memory_barrier hook
this is a bit more sensible all around without being too much hammer
and not enough nail
Acked-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9886>
Mike Blumenkrantz [Tue, 15 Dec 2020 17:48:22 +0000 (12:48 -0500)]
zink: rework some includes
descriptors.h requires stuff from context.h and vice versa, so there's
a little redefinition here to work around that
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9883>
Mike Blumenkrantz [Mon, 14 Dec 2020 02:33:29 +0000 (21:33 -0500)]
zink: use GENERAL layout for sampler images that are also bound as shader images
we can't have the same image with 2 layouts, so just go with the more global one
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9883>
Mike Blumenkrantz [Fri, 4 Dec 2020 16:32:46 +0000 (11:32 -0500)]
zink: simplify some descriptor update function parameters
just removing unused params
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9883>
Mike Blumenkrantz [Mon, 30 Nov 2020 17:09:28 +0000 (12:09 -0500)]
zink: move descriptor barrier handling to main update function
no functional changes
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9883>
Mike Blumenkrantz [Mon, 30 Nov 2020 16:18:52 +0000 (11:18 -0500)]
zink: move update_descriptors & related funcs to zink_descriptors.c
keep zink_draw.c for draw stuff
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9883>
Mike Blumenkrantz [Thu, 10 Dec 2020 16:13:05 +0000 (11:13 -0500)]
zink: rework texture_barrier hook
we can be more precise with this and avoid flushing unnecessarily
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9791>
Alyssa Rosenzweig [Wed, 3 Feb 2021 17:06:34 +0000 (12:06 -0500)]
nir: Unify memory atomics
Avoids some copypaste and makes it easier to see how the different types
relate.
Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Reviewed-by: Gert Wollny <gert.wollny@collabora.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8847>
Mike Blumenkrantz [Mon, 29 Mar 2021 15:04:39 +0000 (11:04 -0400)]
lavapipe: ignore unused clearvalues when beginning renderpass
according to spec, unused clearvalues aren't accessed
> Only elements corresponding to cleared attachments are used. Other elements of pClearValues are ignored.
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9900>