Alejandro Piñeiro [Tue, 8 Oct 2019 13:44:19 +0000 (15:44 +0200)]
v3d: take into account prim_counts_offset
Specifically when reading the primitive counters.
This fixed ~700 CTS tests using this pattern:
dEQP-GLES3.functional.transform_feedback.*
when run after tests like
dEQP-GLES3.functional.prerequisite.read_pixels on the same
caselist. When run individually those tests were passing because
prim_counts_offset was zero.
Fixes: 0f2d1dfe65bfe1ee8f02ce45f100a5508debdfd4 ("v3d: use the GPU to
record primitives written to transform feedback")
Reviewed-by: Jose Maria Casanova Crespo <jmcasanova@igalia.com>
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Samuel Pitoiset [Wed, 9 Oct 2019 16:15:42 +0000 (18:15 +0200)]
radv: get the device name from radeon_info::name
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Dave Airlie [Wed, 9 Oct 2019 23:56:27 +0000 (09:56 +1000)]
st/mesa: fix R8 bitmap texture for TGSI paths.
The initial patch only fixed up the NIR path, but forgot
the TGSI path needed fixing as well.
Fixes: f92226931b ("st/mesa: Prefer R8 for bitmap textures")
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Jason Ekstrand [Wed, 9 Oct 2019 18:21:21 +0000 (13:21 -0500)]
anv/pipeline: Capture serialized NIR
This allows the serialized NIR to be displayed in RenderDoc and similar
tools.
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Matt Turner [Wed, 9 Oct 2019 21:52:09 +0000 (14:52 -0700)]
clover: Remove unused code
Fixes: 96b592696f1 ("gallium: Require LLVM >= 3.9")
Bug: https://bugs.gentoo.org/685678
Greg V [Wed, 4 Jul 2018 17:15:04 +0000 (20:15 +0300)]
clover: use iterator_range in get_kernel_nodes
With libc++ (LLVM's STL implementation), the original code does not compile because an
appropriate vector constructor cannot be found (for the _ForwardIterator one, requirement
is_constructible is not satisfied).
Marek Olšák [Fri, 13 Sep 2019 01:57:00 +0000 (21:57 -0400)]
radeonsi: enable MSAA shader images
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Marek Olšák [Fri, 13 Sep 2019 00:20:53 +0000 (20:20 -0400)]
radeonsi: expand FMASK before MSAA image stores are used
Image stores don't use FMASK, so we have to turn it into identity.
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Marek Olšák [Fri, 13 Sep 2019 01:56:41 +0000 (21:56 -0400)]
radeonsi: apply FMASK to MSAA image loads
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Marek Olšák [Fri, 13 Sep 2019 01:39:31 +0000 (21:39 -0400)]
radeonsi: clean up image_fetch_rsrc
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Marek Olšák [Fri, 13 Sep 2019 01:13:08 +0000 (21:13 -0400)]
radeonsi: add FMASK slots for shader images (for MSAA images)
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Marek Olšák [Sat, 14 Sep 2019 03:58:52 +0000 (23:58 -0400)]
radeonsi: set the sample index for shader images correctly
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Marek Olšák [Mon, 16 Sep 2019 23:37:36 +0000 (19:37 -0400)]
radeonsi: fix GLSL imageSamples()
We haven't supported MSAA images, so it doesn't matter much.
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Marek Olšák [Fri, 13 Sep 2019 01:09:19 +0000 (21:09 -0400)]
tgsi/scan: add tgsi_shader_info::msaa_images_declared
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Marek Olšák [Fri, 13 Sep 2019 01:09:50 +0000 (21:09 -0400)]
nir: add shader_info::last_msaa_image
for radeonsi
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Marek Olšák [Wed, 9 Oct 2019 21:02:07 +0000 (17:02 -0400)]
radeonsi: don't set BO metadata for non-zero planes
pointed out by Bas
Marek Olšák [Mon, 30 Sep 2019 18:03:30 +0000 (14:03 -0400)]
radeonsi: ignore metadata for non-zero planes
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Marek Olšák [Thu, 19 Sep 2019 01:17:11 +0000 (21:17 -0400)]
radeonsi: remove si_vid_join_surfaces and use combined planar allocations
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Marek Olšák [Wed, 28 Aug 2019 01:18:57 +0000 (21:18 -0400)]
radeonsi: allocate planar multimedia formats in 1 buffer
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Marek Olšák [Thu, 19 Sep 2019 00:48:15 +0000 (20:48 -0400)]
vl: use u_format in vl_video_buffer_formats
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Marek Olšák [Sat, 24 Aug 2019 01:16:43 +0000 (21:16 -0400)]
gallium/u_tests: test NV12 allocation and export
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Marek Olšák [Tue, 27 Aug 2019 00:10:43 +0000 (20:10 -0400)]
gallium/util: add planar format layouts and helpers
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Marek Olšák [Mon, 26 Aug 2019 23:53:09 +0000 (19:53 -0400)]
gallium/util: remove enum numbering from util_format_layout
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Caio Marcelo de Oliveira Filho [Tue, 8 Oct 2019 00:15:26 +0000 (17:15 -0700)]
i965: Disable fast clears when running with INTEL_DEBUG=nofc
Reviewed-by: Rafael Antognolli <rafael.antognolli@intel.com>
Caio Marcelo de Oliveira Filho [Tue, 8 Oct 2019 00:12:14 +0000 (17:12 -0700)]
iris: Disable fast clears when running with INTEL_DEBUG=nofc
Reviewed-by: Rafael Antognolli <rafael.antognolli@intel.com>
Caio Marcelo de Oliveira Filho [Tue, 8 Oct 2019 00:05:23 +0000 (17:05 -0700)]
anv: Disable fast clears when running with INTEL_DEBUG=nofc
Reviewed-by: Rafael Antognolli <rafael.antognolli@intel.com>
Caio Marcelo de Oliveira Filho [Tue, 8 Oct 2019 00:04:01 +0000 (17:04 -0700)]
intel: Add INTEL_DEBUG=nofc for disabling fast clears
Reviewed-by: Rafael Antognolli <rafael.antognolli@intel.com>
Maya Rashish [Tue, 3 Sep 2019 10:04:15 +0000 (13:04 +0300)]
llvmpipe: avoid left-shifting a negative number.
Reviewed-by: Matt Turner <mattst88@gmail.com>
Signed-off-by: Maya Rashish <coypu@sdf.org>
Danilo Spinella [Fri, 13 Sep 2019 22:03:20 +0000 (00:03 +0200)]
egl: Include stddef.h in generated source
Required for NULL macro used throughout the generated file.
Reviewed-by: Eric Engestrom <eric.engestrom@intel.com>
Reviewed-by: Matt Turner <mattst88@gmail.com>
OBATA Akio [Mon, 16 Sep 2019 07:39:32 +0000 (16:39 +0900)]
util: fix to detect NetBSD properly
<sys/param.h> is required for NetBSD version detection,
and __NetBSD__ must be used to detect even on older releases.
Reviewed-by: Eric Engestrom <eric.engestrom@intel.com>
Reviewed-by: Matt Turner <mattst88@gmail.com>
Jan Beich [Mon, 16 Sep 2019 12:55:06 +0000 (12:55 +0000)]
util: simplify BSD includes
Reviewed-by: Matt Turner <mattst88@gmail.com>
Signed-off-by: Jan Beich <jbeich@FreeBSD.org>
Jan Beich [Mon, 16 Sep 2019 11:42:07 +0000 (11:42 +0000)]
util: detect AltiVec at runtime on BSDs
Reviewed-by: Matt Turner <mattst88@gmail.com>
Signed-off-by: Jan Beich <jbeich@FreeBSD.org>
Jan Beich [Mon, 16 Sep 2019 11:26:24 +0000 (11:26 +0000)]
util: skip AltiVec detection if built with -maltivec
Helps platforms where runtime detection isn't implemented.
Reviewed-by: Matt Turner <mattst88@gmail.com>
Signed-off-by: Jan Beich <jbeich@FreeBSD.org>
Jan Beich [Mon, 16 Sep 2019 11:34:28 +0000 (11:34 +0000)]
util: detect NEON at runtime on FreeBSD
Reviewed-by: Matt Turner <mattst88@gmail.com>
Signed-off-by: Jan Beich <jbeich@FreeBSD.org>
Jan Beich [Mon, 16 Sep 2019 11:26:24 +0000 (11:26 +0000)]
util: skip NEON detection if built with -mfpu=neon
Helps platforms where runtime detection isn't implemented.
Reviewed-by: Matt Turner <mattst88@gmail.com>
Signed-off-by: Jan Beich <jbeich@FreeBSD.org>
Adam Jackson [Wed, 9 Oct 2019 00:20:36 +0000 (20:20 -0400)]
egl: Make native display detection work more than once
eglGetDisplay is awful because you have to inspect the pointer you're
given and guess what type of native display it corresponds to. We make
it worse by caching the type of the first such display we detect, so if
the second call to eglGetDisplay is to a different display type, kaboom.
Fortunately this is a problem that can be solved with the delete key.
Reviewed-by: Eric Engestrom <eric.engestrom@intel.com>
Closes: https://gitlab.freedesktop.org/mesa/mesa/issues/156
Rhys Perry [Wed, 18 Sep 2019 19:39:41 +0000 (20:39 +0100)]
aco: enable nir_opt_sink
SGPRS: 880272 -> 838936 (-4.70 %)
VGPRS: 705316 -> 680988 (-3.45 %)
Spilled SGPRs: 1032 -> 832 (-19.38 %)
Spilled VGPRs: 0 -> 0 (0.00 %)
Private memory VGPRs: 0 -> 0 (0.00 %)
Scratch size: 252 -> 252 (0.00 %) dwords per thread
Code Size:
55150788 ->
55172436 (0.04 %) bytes
LDS: 451 -> 451 (0.00 %) blocks
Max Waves: 66178 -> 68706 (3.82 %)
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Connor Abbott [Wed, 25 Sep 2019 12:17:23 +0000 (14:17 +0200)]
nir/sink: Don't sink load_ubo to outside of its defining loop
Previously, this could have made the resource divergent in code like
that which is genereated by nir_lower_non_uniform_access.
Fixes: da8ed68a ('nir: replace nir_move_load_const() with nir_opt_sink()')
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Connor Abbott [Wed, 25 Sep 2019 12:02:48 +0000 (14:02 +0200)]
nir/sink: Rewrite loop handling logic
Previously, for code like:
loop {
loop {
a = load_ubo()
}
use(a)
}
adjust_block_for_loops() would return the block before the first loop.
Now we compute the range of allowed blocks and then walk the dominance
tree directly, guaranteeing directly that we always choose a block that
dominates all the uses and is dominated by the definition.
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Marek Olšák [Wed, 9 Oct 2019 16:25:10 +0000 (12:25 -0400)]
amd: don't use AMD_FAMILY definitions from amdgpu_drm.h
use the ones from addrlib
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Dylan Baker [Wed, 9 Oct 2019 17:25:17 +0000 (10:25 -0700)]
docs: update calendar, add news item, and link release notes for 19.2.1
Dylan Baker [Wed, 9 Oct 2019 17:19:16 +0000 (10:19 -0700)]
docs: Add SHA256 sum for 19.2.1
Dylan Baker [Wed, 9 Oct 2019 16:42:37 +0000 (09:42 -0700)]
docs: Add relnotes for 19.2.1
Rhys Perry [Tue, 8 Oct 2019 12:40:17 +0000 (13:40 +0100)]
aco: move s_andn2_b64 instructions out of the p_discard_if
And use a new p_discard_early_exit instruction. This fixes some cases
where a definition having the same register as an operand causes issues.
v2: rename instruction to p_exit_early_if
v2: modify the existing instruction instead of creating a new one
v3: merge the "i == num - 1" IFs
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Daniel Schürmann [Mon, 7 Oct 2019 00:52:55 +0000 (02:52 +0200)]
aco: don't reorder instructions in order to lower boolean phis
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Daniel Schürmann [Mon, 7 Oct 2019 00:32:54 +0000 (02:32 +0200)]
aco: re-use existing phi instruction when lowering boolean phis
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Michael Schellenberger Costa [Mon, 12 Aug 2019 18:40:37 +0000 (20:40 +0200)]
aco: Cleanup insert_before_logical_end
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Vasily Khoruzhick [Tue, 8 Oct 2019 03:11:46 +0000 (20:11 -0700)]
lima/ppir: don't clone texture loads
Cloning texture loads isn't a good idea since we may move it into
a block that is not shared between all the invocations of the shader.
We'd like to avoid that since it may result in undefined behavior.
Reviewed-by: Andreas Baierl <ichgeh@imkreisrum.de>
Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com>
Michel Dänzer [Tue, 8 Oct 2019 15:50:07 +0000 (17:50 +0200)]
gitlab-ci/lava: Add needs: for container image to test jobs
Without this, the test jobs could spuriously run after the container
job failed or was cancelled, even if the build job didn't run at all.
Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Samuel Pitoiset [Wed, 9 Oct 2019 08:37:04 +0000 (10:37 +0200)]
radv: bump minTexelBufferOffsetAlignment to 4
The spec has probably been misinterpreted during RADV bringup.
This fixes GPU hangs with dEQP-VK.binding_model.*offset_nonzero*.
Fixes: f4e499ec791 ("radv: add initial non-conformant radv vulkan driver")
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Sergii Romantsov [Thu, 18 Jul 2019 12:43:59 +0000 (15:43 +0300)]
meta: leak of shader program when decompressing tex-images
CC: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Signed-off-by: Sergii Romantsov <sergii.romantsov@globallogic.com>
Erik Faye-Lund [Mon, 15 Jul 2019 10:03:43 +0000 (12:03 +0200)]
mesa/main: prefer R8-textures instead of A8 for glBitmap in display lists
This allows drivers to communicate that they prefer R8 textures rather
than A8 for glBitmap usage.
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Dave Airlie [Thu, 4 Oct 2018 01:41:26 +0000 (02:41 +0100)]
st/mesa: Prefer R8 for bitmap textures
If it's not available, we fall back to A8. This should work on all drivers,
because we depend on it in the display-list code already.
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Samuel Pitoiset [Tue, 8 Oct 2019 08:30:03 +0000 (10:30 +0200)]
drirc: enable vk_x11_override_min_image_count for DOOM
DOOM fails to handle more images than expected when the adaptative
sync mode is enabled.
Closes: https://gitlab.freedesktop.org/mesa/mesa/issues/1902
Cc: 19.2 <mesa-stable@lists.freedesktop.org>
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Samuel Pitoiset [Mon, 7 Oct 2019 08:26:22 +0000 (10:26 +0200)]
radv: implement VK_KHR_shader_clock
NIR->LLVM and ACO already support nir_intrinsic_shader_clock.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Kenneth Graunke [Wed, 25 Sep 2019 07:31:07 +0000 (00:31 -0700)]
iris: Implement the Broadwell NP Z PMA Stall Fix
This should help avoid stalls in the pixel mask array in certain
non-promoted depth cases. It especially helps for Z16, as each bit
in the PMA corresponds to two pixels when using Z16, as opposed to
the usual one pixel.
Improves performance in GFXBench5 TRex by 22% (n=1).
Caio Marcelo de Oliveira Filho [Tue, 8 Oct 2019 22:52:04 +0000 (15:52 -0700)]
docs: Update recently enabled VK extensions on Intel
Caio Marcelo de Oliveira Filho [Thu, 22 Aug 2019 19:30:43 +0000 (12:30 -0700)]
anv: Enable VK_EXT_shader_subgroup_{ballot,vote}
Anvil now supports and passes Vulkan CTS tests matching
dEQP-VK.subgroups.*.ext_shader_subgroup_ballot.*
dEQP-VK.subgroups.*.ext_shader_subgroup_vote.*
and crucible tests matching
func.shader-ballot.*
func.shader-subgroup-vote.*
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Kenneth Graunke [Tue, 8 Oct 2019 22:20:19 +0000 (15:20 -0700)]
st/mesa: Fix inverted polygon stipple condition
Fixes Piglit's gl-2.1-polygon-stipple-fs on iris.
Fixes: 63f24c3c016 ("gallium: Enable MESA_framebuffer_flip_y")
Reviewed-by: Fritz Koenig <frkoenig@google.com>
Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com>
Fritz Koenig [Tue, 30 Jul 2019 21:40:33 +0000 (14:40 -0700)]
gallium: Enable MESA_framebuffer_flip_y
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com>
Fritz Koenig [Tue, 30 Jul 2019 21:53:30 +0000 (14:53 -0700)]
mesa: Allow MESA_framebuffer_flip_y for GLES 3
Implement glFramebufferParameteriMESA on GLES 3 so
that the extension is not dependant on GLES 3.1
Reviewed-by: Eric Anholt <eric@anholt.net>
Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com>
Fritz Koenig [Mon, 7 Oct 2019 18:15:03 +0000 (11:15 -0700)]
mesa: GetFramebufferParameteriv spelling
GetFramebufferParameteriv was incorrectly spelled as
GetFramebufferParameteri.
Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com>
Fritz Koenig [Mon, 7 Oct 2019 18:33:59 +0000 (11:33 -0700)]
include/GLES2: Sync GLES2 headers with Khronos
Bring in glFramebufferParameteriMESA/glGetFramebufferParameterivMESA
Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com>
Clément Guérin [Sat, 5 Oct 2019 03:05:09 +0000 (20:05 -0700)]
radeonsi: enable zerovram for Rocket League
Fixes corruption on game startup.
Closes: https://gitlab.freedesktop.org/mesa/mesa/issues/1888
Cc: 19.1 19.2 <mesa-stable@lists.freedesktop.org>
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Kenneth Graunke [Tue, 8 Oct 2019 17:11:52 +0000 (10:11 -0700)]
iris: Properly unreference extra VBOs for draw parameters
bound_vertex_buffers doesn't include extra draw parameters buffers.
Tracking this correctly is kind of complicated, and iris_destroy_state
isn't exactly in a hot path, so just loop over all VBO bindings.
Fixes: 4122665dd90 (iris: Enable ARB_shader_draw_parameters support)
Reported-by: Sergii Romantsov <sergii.romantsov@globallogic.com>
Eric Engestrom [Sat, 14 Sep 2019 21:18:32 +0000 (22:18 +0100)]
meson: fix sys/mkdev.h detection on Solaris
On Solaris, sys/sysmacros.h has long-deprecated copies of major() & minor()
but not makedev().
sys/mkdev.h has all three and is the preferred choice.
Let's make sure we check for all 3 major(), minor() and makedev().
Reported-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com>
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Tested-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Eric Engestrom [Sat, 5 Oct 2019 07:30:44 +0000 (08:30 +0100)]
include: update drm-uapi
`drm.h` was missing a `#include <stdint.h>`, which was completely
breaking the non-linux builds after
272f9cfe6a19212354c8 ("dri: Use DRM_FORMAT_*
instead of defining our own copy.") started making use of it.
Fixes: 272f9cfe6a19212354c8 ("dri: Use DRM_FORMAT_* instead of defining our own copy.")
Closes: https://gitlab.freedesktop.org/mesa/mesa/issues/950
Acked-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Michel Dänzer [Mon, 7 Oct 2019 10:02:14 +0000 (12:02 +0200)]
loader: Simplify handling of the radeonsi driver
The list of AMD/ATI devices supported by radeon/r200/r300/r600 is
complete, so anything else must use radeonsi.
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Bas Nieuwenhuizen [Tue, 8 Oct 2019 01:41:50 +0000 (03:41 +0200)]
amd/llvm: Fix warning due to asserted-only variable.
[212/893] Compiling C object 'src/amd/llvm/
ce8261c@@amd_common_llvm@sta/ac_nir_to_llvm.c.o'.
../mesa/src/amd/llvm/ac_nir_to_llvm.c: In function ‘visit_image_atomic’:
../mesa/src/amd/llvm/ac_nir_to_llvm.c:2636:17: warning: unused variable ‘format’ [-Wunused-variable]
2636 | const GLenum format = nir_intrinsic_format(instr);
| ^~~~~~
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Boris Brezillon [Fri, 20 Sep 2019 06:55:54 +0000 (08:55 +0200)]
panfrost: Draw the wallpaper when only depth/stencil bufs are cleared
When only the depth/stencil bufs are cleared, we should make sure the
color content is reloaded into the tile buffers if we want to preserve
their content.
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Boris Brezillon [Thu, 19 Sep 2019 13:52:02 +0000 (15:52 +0200)]
panfrost: Make sure a clear does not re-use a pre-existing batch
glClear()s are expected to be the first thing GL apps do before drawing
new things. If there's already an existing batch targetting the same
FBO that has draws attached to it, we should make sure the new clear
gets a new batch assigned to guaranteed that the FB content is actually
cleared with the requested color/depth/stencil values.
We create a panfrost_get_fresh_batch_for_fbo() helper for that and
call it from panfrost_clear().
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Kenneth Graunke [Mon, 7 Oct 2019 23:03:14 +0000 (16:03 -0700)]
iris: Update comment about 3-component formats and buffer textures
You can't render to PIPE_BUFFER so there's no reason to prefer RGBX.
PBO upload would like to use proper RGB textures as source data.
Chris Wilson [Wed, 10 Jul 2019 19:18:38 +0000 (20:18 +0100)]
iris: Allow packed RGB pbo uploads
Hitting any fallback path on Broxton as we require clflushing the whole
buffer even for an upload of a subtexture. However, since gallium
provides a pbo upload path, allow it to sample packed RGB if supported.
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Tapani Pälli [Mon, 7 Oct 2019 06:07:48 +0000 (09:07 +0300)]
anv/android: fix images created with external format support
This fixes a case where user first creates image and then later binds it
with memory created from AHW buffer.
Cc: <mesa-stable@lists.freedesktop.org>
Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Bas Nieuwenhuizen [Mon, 7 Oct 2019 15:34:22 +0000 (17:34 +0200)]
meson: Always add LLVM coroutines module.
It gets used by the gallium auxiliary draw module, which gets used
pretty much always when LLVM is used as JIT.
At the same time most builds don't hit the issue here because the
shared library of LLVM contains all modules.
Fixes: d32690b43c91 ("gallivm: add coroutine pass manager support")
Closes: https://gitlab.freedesktop.org/mesa/mesa/issues/951
Reviewed-by: Gert Wollny <gert.wollny@collabora.com>
Timur Kristóf [Fri, 27 Sep 2019 08:29:51 +0000 (10:29 +0200)]
amd: Move all amd/common code that depends on LLVM to amd/llvm.
This commit is a step towards the goal of being able to build RADV
without LLVM. In the future we would like to offer the option to
use RADV solely with ACO. There is still a need for the common AMD
code located in amd/common but the LLVM specific parts need to be
separated.
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Acked-by: Marek Olšák <marek.olsak@amd.com>
Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Ilia Mirkin [Wed, 2 Oct 2019 23:47:00 +0000 (19:47 -0400)]
nvc0: add support for GL_EXT_demote_to_helper_invocation
Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Ilia Mirkin [Wed, 2 Oct 2019 23:39:30 +0000 (19:39 -0400)]
gallium/tgsi: add support for DEMOTE and READ_HELPER opcodes
This mirrors the intrinsics in the GLSL IR. One could imagine an
alternate definition where reading the semantic would account for the
READ_HELPER functionality, but that feels potentially dodgy and could be
subject to CSE unpleasantness.
Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Marek Olšák [Thu, 26 Sep 2019 17:37:45 +0000 (13:37 -0400)]
radeonsi: use simple_mtx_t instead of mtx_t
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Marek Olšák [Thu, 26 Sep 2019 17:37:45 +0000 (13:37 -0400)]
st/mesa: use simple_mtx_t instead of mtx_t
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Marek Olšák [Thu, 26 Sep 2019 01:38:40 +0000 (21:38 -0400)]
gallium: add PIPE_RESOURCE_FLAG_SINGLE_THREAD_USE to skip util_range lock
u_upload_mgr sets it, so that util_range_add can skip the lock.
The time spent in tc_transfer_flush_region decreases from 0.8% to 0.2%
in torcs on radeonsi.
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Marek Olšák [Thu, 26 Sep 2019 01:22:45 +0000 (21:22 -0400)]
util: use simple_mtx_t for util_range
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Marek Olšák [Mon, 30 Sep 2019 19:14:11 +0000 (15:14 -0400)]
winsys/radeon: initialize SIMD properties in radeon_info
This was missed when I added them.
Closes: https://gitlab.freedesktop.org/mesa/mesa/issues/1839
Fixes: 0692ae34e93 ("ac: move ac_get_num_physical_sgprs into radeon_info")
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Kenneth Graunke [Mon, 7 Oct 2019 20:20:36 +0000 (13:20 -0700)]
iris: Drop vtbl usage for some load_register calls
We can just call the actual functions directly.
Jordan Justen [Fri, 4 Oct 2019 08:21:45 +0000 (01:21 -0700)]
iris/state: Move reg/mem load/store functions earlier in file
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
Eric Engestrom [Tue, 24 Sep 2019 23:43:48 +0000 (00:43 +0100)]
meson: drop unused inc_nir
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com>
Reviewed-by: Dylan Baker <dylan@pnwbakers.com>
Eric Engestrom [Tue, 24 Sep 2019 23:43:29 +0000 (00:43 +0100)]
meson: drop duplicate inc_nir from spirv2nir
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com>
Reviewed-by: Dylan Baker <dylan@pnwbakers.com>
Eric Engestrom [Tue, 24 Sep 2019 23:43:13 +0000 (00:43 +0100)]
meson: drop duplicate inc_nir from libglsl
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com>
Reviewed-by: Dylan Baker <dylan@pnwbakers.com>
Eric Engestrom [Tue, 24 Sep 2019 23:39:22 +0000 (00:39 +0100)]
meson: drop duplicate inc_nir from libiris
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com>
Reviewed-by: Dylan Baker <dylan@pnwbakers.com>
Eric Engestrom [Tue, 24 Sep 2019 23:44:21 +0000 (00:44 +0100)]
meson: rename libnir to _libnir to make it clear it's not meant to be used anywhere else
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com>
Reviewed-by: Dylan Baker <dylan@pnwbakers.com>
Eric Engestrom [Tue, 24 Sep 2019 23:38:02 +0000 (00:38 +0100)]
meson: use idep_nir instead of libnir in pipe-loader
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com>
Reviewed-by: Dylan Baker <dylan@pnwbakers.com>
Eric Engestrom [Tue, 24 Sep 2019 23:37:20 +0000 (00:37 +0100)]
meson: use idep_nir instead of libnir in haiku softpipe
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com>
Reviewed-by: Dylan Baker <dylan@pnwbakers.com>
Eric Engestrom [Tue, 24 Sep 2019 23:37:00 +0000 (00:37 +0100)]
meson: use idep_nir instead of libnir in gallium nine
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com>
Reviewed-by: Dylan Baker <dylan@pnwbakers.com>
Eric Engestrom [Tue, 24 Sep 2019 23:35:49 +0000 (00:35 +0100)]
meson: use idep_nir instead of libnir in libclnir
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com>
Reviewed-by: Dylan Baker <dylan@pnwbakers.com>
Eric Engestrom [Tue, 24 Sep 2019 23:35:07 +0000 (00:35 +0100)]
meson: use idep_nir instead of libnir in libnouveau
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com>
Reviewed-by: Dylan Baker <dylan@pnwbakers.com>
Eric Engestrom [Wed, 25 Sep 2019 06:58:07 +0000 (07:58 +0100)]
meson: add missing idep_nir_headers in iris_gen_libs
Fixes: 4929f020c37eac5b07f9 ("iris: better SBE")
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com>
Reviewed-by: Dylan Baker <dylan@pnwbakers.com>
Eric Engestrom [Mon, 30 Sep 2019 21:29:55 +0000 (22:29 +0100)]
script: drop get_reviewer.pl
This script doesn't make sense anymore in the age of GitLab.
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Reviewed-by: Dylan Baker <dylan@pnwbakers.com>
Eric Engestrom [Wed, 2 Oct 2019 12:43:21 +0000 (13:43 +0100)]
meson/loader: drop unneeded *.h file
Meson automatically tracks any file included by a file it already tracks,
and `pci_id_driver_map.h` & `loader.h` are included by `loader.c`, while
`loader_dri3_helper.h` is included by `loader_dri3_helper.c`.
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com>
Acked-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Eric Engestrom [Wed, 2 Oct 2019 12:42:14 +0000 (13:42 +0100)]
loader: use ARRAY_SIZE instead of NULL sentinel
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com>
Acked-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Eric Engestrom [Wed, 2 Oct 2019 19:09:50 +0000 (20:09 +0100)]
loader: s/int/bool/ for predicate result
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com>
Acked-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>