Erik Faye-Lund [Wed, 8 Feb 2023 16:03:53 +0000 (17:03 +0100)]
Revert "meson: Fix Asahi build on macOS"
This reverts commit
4ca4a05627e40e8212a8ea957f8ef2f697e4e322.
Reviewed-by: Yonggang Luo <luoyonggang@gmail.com>
Reviewed-by: Asahi Lina <lina@asahilina.net>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21185>
Erik Faye-Lund [Wed, 8 Feb 2023 08:34:34 +0000 (09:34 +0100)]
meson: don't pass vk wsi args where they don't belong
Only code that cares about Vulkan WSI should get the corresponding
arguments passed. Otherwise, the Vulkan headers might end up including
other headers that we don't have the correct dependencies passed for.
So let's give those a dedicated variable, and only pass that where it's
actually needed.
Fixes:
b39958a3a18 ("anv,nir: Move the ANV YCbCr lowering pass to common code")
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/8193
Reviewed-by: Yonggang Luo <luoyonggang@gmail.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21185>
Erik Faye-Lund [Wed, 8 Feb 2023 09:07:21 +0000 (10:07 +0100)]
vulkan: prefer vulkan_core.h over vulkan.h
If we include vulkan.h, we risk including the WSI bits as well, which we
don't need here. Only trouble can follow from including these where
they're not needed.
So let's include vulkan_core.h in these places instead.
Fixes:
b39958a3a18 ("anv,nir: Move the ANV YCbCr lowering pass to common code")
Reviewed-by: Yonggang Luo <luoyonggang@gmail.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21185>
Mike Blumenkrantz [Mon, 19 Sep 2022 17:16:45 +0000 (13:16 -0400)]
gallium: plumb resolve attachments through from frontends -> pipe_framebuffer_state
some drivers may find this useful
Reviewed-by: Adam Jackson <ajax@redhat.com>
Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18695>
Samuel Pitoiset [Wed, 15 Feb 2023 11:04:18 +0000 (12:04 +0100)]
radv/ci: add missing expected failures with RADV_PERFTEST=gpl on GFX1100
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21334>
Constantine Shablya [Wed, 15 Feb 2023 16:35:37 +0000 (18:35 +0200)]
hasvk: use Vulkan runtime's robust buffer access
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21338>
Constantine Shablya [Wed, 15 Feb 2023 16:35:14 +0000 (18:35 +0200)]
anv: use Vulkan runtime's robust buffer access
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21338>
David Rosca [Sun, 18 Dec 2022 17:01:37 +0000 (18:01 +0100)]
frontends/va: Map VAEncCodedBufferType buffer as PIPE_MAP_READ
VAEncCodedBufferType is used for reading back encoded data.
Mapping it for read instead of write speeds up reading
the data on CPU.
On radeonsi this will result in VRAM copy to staging buffer
in cached GTT, making the CPU read much faster.
Signed-off-by: David Rosca <nowrep@gmail.com>
Reviewed-by: Ruijing Dong <ruijing.dong@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20376>
Kai Wasserbäch [Sun, 5 Feb 2023 11:09:52 +0000 (12:09 +0100)]
fix: clover/llvm: replace llvm::None with std::nullopt for LLVM 17+
llvm::None was deprecated and builds started failing with
error: ‘None’ is not a member of ‘llvm’
Instead of using the temporarily available include in ADT which would
add a deprecation warning to the build, directly replace llvm::None with
the recommended std::nullopt
This change takes only effect with LLVM 17 or newer.
Reference: https://github.com/llvm/llvm-project/blob/
d4f38ef288c3a4cf2318182c8585a5c7e760877a/llvm/include/llvm/ADT/None.h
Reviewed-by: Karol Herbst <kherbst@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21125>
Danylo Piliaiev [Tue, 14 Feb 2023 18:24:59 +0000 (19:24 +0100)]
ir3: Consider dst type in ubo_vec4 to ldc lowering
The dst type could be either 16b or 32b.
Fixes validation failure in dEQP-VK.subgroups.* tests which deal with
16b types.
validation fail: (type_size(instr->cat6.type) <= 16) == !!((instr->dsts[0])->flags & IR3_REG_HALF)
-> for instruction: MESA: info: 0023:0000:000: ldc.offset0.base0 hssa_23 (wrmask=0x3), ssa_1, ssa_22
Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21316>
Karmjit Mahil [Fri, 27 Jan 2023 18:25:57 +0000 (18:25 +0000)]
pvr: Add support for VK_ATTACHMENT_LOAD_OP_LOAD.
Signed-off-by: Karmjit Mahil <Karmjit.Mahil@imgtec.com>
Reviewed-by: Frank Binns <frank.binns@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21280>
Karmjit Mahil [Fri, 18 Nov 2022 14:51:37 +0000 (14:51 +0000)]
pvr: Upload spm load programs to device.
The programs are currently unused but will be needed for the spm
background object load op.
Signed-off-by: Karmjit Mahil <Karmjit.Mahil@imgtec.com>
Reviewed-by: Frank Binns <frank.binns@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21279>
Karmjit Mahil [Thu, 2 Feb 2023 16:34:34 +0000 (16:34 +0000)]
pvr: Add SPM load usc empty programs
Signed-off-by: Karmjit Mahil <Karmjit.Mahil@imgtec.com>
Reviewed-by: Frank Binns <frank.binns@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21279>
Nanley Chery [Fri, 10 Feb 2023 22:28:41 +0000 (14:28 -0800)]
iris: Drop iris_cache_flush_for_render
Before dropping this function, handle the two callers of this function:
* The call in iris_blorp.c is redundant. The required cache flushes are
already handled by the callers of blorp functions. Delete this.
* The call in iris_resolve.c is still providing a benefit because it
calls iris_emit_buffer_barrier_for internally. Inline the needed
barrier.
Cc: 23.0 <mesa-stable>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21303>
Nanley Chery [Tue, 14 Feb 2023 01:52:58 +0000 (17:52 -0800)]
iris: Flush caches for aux-mode changes more often
Memory accesses can get corrupted when there's a disagreement between:
* the aux-mode of existing cache lines for a surface and
* the aux-usage in that surface's RENDER_SURFACE_STATE object
We have already prevented hardware from seeing this conflict for
rendering operations, but due to how the L3 is shared among multiple
clients in gfx12 (e.g., sampler engine, render engine, etc.), we need to
expand the scope of the existing solution. Now, before any access of a
compressible resource, we make sure to flush the prior aux-mode from the
caches.
The majority of changes here refactor things for use in a new function,
flush_previous_aux_mode. The remaining change calls that function from
within iris_resource_prepare_access.
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/6558
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/7625
Cc: 23.0 <mesa-stable>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21303>
Nanley Chery [Tue, 14 Feb 2023 00:45:02 +0000 (16:45 -0800)]
iris: Update comment in iris_cache_flush_for_render
Update the comment to reflect the fact that iris no longer switches
between CCS_E and CCS_D.
Cc: 23.0 <mesa-stable>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21303>
Yonggang Luo [Wed, 28 Sep 2022 14:39:28 +0000 (22:39 +0800)]
meson: Combine duplicated c_args and cpp_args
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
Reviewed-by: Dylan Baker <dylan@pnwbakers.com>
Reviewed-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19185>
Yonggang Luo [Sat, 11 Feb 2023 06:49:59 +0000 (14:49 +0800)]
meson: Split c_cpp_args from pre_args
pre_args should not include compiler options
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
Reviewed-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19185>
Eric Engestrom [Sat, 21 Jan 2023 12:21:34 +0000 (12:21 +0000)]
meson: drop `TODO: opengl`, it's done
Suggested-by: Adam Jackson <ajax@redhat.com>
Signed-off-by: Eric Engestrom <eric@igalia.com>
Reviewed-by: Yonggang Luo <luoyonggang@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19600>
Eric Engestrom [Tue, 17 Jan 2023 17:58:33 +0000 (17:58 +0000)]
meson: only build glsl when needed
Signed-off-by: Eric Engestrom <eric@igalia.com>
Reviewed-by: Yonggang Luo <luoyonggang@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19600>
Eric Engestrom [Tue, 17 Jan 2023 17:57:43 +0000 (17:57 +0000)]
meson: only build libglsl_util when needed
Signed-off-by: Eric Engestrom <eric@igalia.com>
Reviewed-by: Yonggang Luo <luoyonggang@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19600>
Eric Engestrom [Sat, 5 Nov 2022 08:47:04 +0000 (08:47 +0000)]
meson: only build the loader when needed
Signed-off-by: Eric Engestrom <eric@igalia.com>
Reviewed-by: Yonggang Luo <luoyonggang@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19600>
Eric Engestrom [Sat, 5 Nov 2022 08:47:04 +0000 (08:47 +0000)]
meson: only build mapi when needed
Signed-off-by: Eric Engestrom <eric@igalia.com>
Reviewed-by: Yonggang Luo <luoyonggang@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19600>
Eric Engestrom [Tue, 17 Jan 2023 17:56:22 +0000 (17:56 +0000)]
meson: move float64_glsl_file one meson.build up
anv uses it.
Signed-off-by: Eric Engestrom <eric@igalia.com>
Reviewed-by: Yonggang Luo <luoyonggang@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19600>
Mike Blumenkrantz [Mon, 23 Jan 2023 15:53:29 +0000 (10:53 -0500)]
lavapipe: enable linear filtering for depth formats
this seems to work according to cts
Reviewed-by: Emma Anholt <emma@anholt.net>
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20859>
Mark Janes [Fri, 10 Feb 2023 23:22:47 +0000 (15:22 -0800)]
intel: Implement Wa_16011448509
"Use 3DSTATE_CONST command for individual shaders instead of
3DSTATE_CONST_ALL COMMAND"
On gen 12.0 platforms, 3DSTATE_CONSTANT_ALL command is not processed
correctly in certain cases.
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21301>
Mike Blumenkrantz [Tue, 14 Feb 2023 15:10:20 +0000 (10:10 -0500)]
zink: block LINEAR filtered blits for zs formats
this is illegal, and the u_blitter path has to be taken to guarantee
enough accuracy that the strictest piglit tests pass
cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21314>
Mike Blumenkrantz [Tue, 14 Feb 2023 15:08:22 +0000 (10:08 -0500)]
Revert "zink: always use NEAREST for zs blits"
This reverts commit
067545eb9af79414054e4bef3ab48af003758663.
this is good enough for CI but not enough for anholt's piglit tests
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21314>
Eric Engestrom [Thu, 21 Jul 2022 21:38:27 +0000 (22:38 +0100)]
vk/runtime: turn vk.xml extension requirements into asserts
More specifically, turn
<extension name="VK_KHR_foo" requires="VK_KHR_bar">
into
assert(!ext->KHR_foo || ext->KHR_bar);
Signed-off-by: Eric Engestrom <eric@igalia.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21261>
Eric Engestrom [Fri, 10 Feb 2023 17:56:36 +0000 (17:56 +0000)]
vk/runtime: keep track of supported instance extensions
Signed-off-by: Eric Engestrom <eric@igalia.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21261>
Eric Engestrom [Thu, 21 Jul 2022 21:38:27 +0000 (22:38 +0100)]
vk/util: keep track of extension requirements
Signed-off-by: Eric Engestrom <eric@igalia.com>
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21261>
Jesse Natalie [Tue, 14 Feb 2023 00:56:19 +0000 (16:56 -0800)]
dzn: Enable KHR_storage_buffer_storage_class
It's required for VK1.1 and Mesa's SPIR-V parser handles it for us.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21261>
Lionel Landwerlin [Wed, 8 Feb 2023 18:48:25 +0000 (20:48 +0200)]
intel/fs: bound subgroup invocation read to dispatch size
This is to avoid out of bound register accesses (potentially leading
to hangs) when the dispatch size is smaller than when is reported in
the NIR subgroup_size.
v2: Implement bounding with a mask (since workgroup sizes are powers of 2) (Faith)
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Fixes:
530de844ef4d ("intel,anv,iris,crocus: Drop subgroup size from the shader key")
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21282>
Mike Blumenkrantz [Mon, 13 Feb 2023 22:15:57 +0000 (17:15 -0500)]
zink: enable renderpass optimizations by default for selected drivers
CI has been running this for months on turnip, so let's give it some
broader testing
also add a ZINK_DEBUG=norp for testing
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21296>
Georg Lehmann [Thu, 5 Jan 2023 16:20:42 +0000 (17:20 +0100)]
aco: Don't use vcmpx with DPP.
V_CMPX+DPP returns 0 with reads from disabled lanes, unlike V_CMP+DPP (RDNA3 ISA doc, 7.7)
Fixes:
baab6f18c91 ("aco: Optimize branching sequence during SSA elimination.")
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20537>
Faith Ekstrand [Mon, 13 Feb 2023 23:24:18 +0000 (17:24 -0600)]
nir/from_ssa: Use more helpers in resolve_parallel_copies
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21299>
Kenneth Graunke [Fri, 10 Feb 2023 09:14:11 +0000 (01:14 -0800)]
nir: Fix typos in the from-SSA pass comments
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21299>
Kenneth Graunke [Fri, 10 Feb 2023 07:47:38 +0000 (23:47 -0800)]
nir: Fix merge_set_dump() to compile again
This #if 0'd debug code has been broken since -Werror=vla was added.
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21299>
Kenneth Graunke [Thu, 9 Feb 2023 23:18:05 +0000 (15:18 -0800)]
nir: Print divergence information for registers as well as SSA defs
This patch causes us to print "con" and "div" for registers as well as
SSA defs. We print it on both register declarations, and destinations.
The latter isn't strictly necessary, but it is handy to be able to see
e.g. a convergent value being assigned to a divergent register without
having to constantly refer back to definitions that might be much
earlier in the program. I originally printed it for sources as well,
but that got to be a bit wordy, so I dropped that.
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21299>
Erik Faye-Lund [Thu, 9 Feb 2023 08:31:12 +0000 (09:31 +0100)]
meson: remove unused USE_FOO_ASM defines
The usage of these defines was removed, so let's remove the definitions
as well.
Reviewed-by: Eric Engestrom <eric@igalia.com>
Reviewed-by: Yonggang Luo <luoyonggang@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21212>
Rohan Garg [Wed, 1 Feb 2023 17:46:47 +0000 (18:46 +0100)]
anv/blorp: use existing function to convert the op to a string
Signed-off-by: Rohan Garg <rohan.garg@intel.com>
Reviewed-by: José Roberto de Souza <jose.souza@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21283>
Rohan Garg [Wed, 1 Feb 2023 17:59:35 +0000 (18:59 +0100)]
isl: fix some documentation
Signed-off-by: Rohan Garg <rohan.garg@intel.com>
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21283>
Rohan Garg [Fri, 3 Feb 2023 10:59:46 +0000 (11:59 +0100)]
anv: reuse the VK_IMAGE_ASPECT_PLANES_BITS_ANV macro
Signed-off-by: Rohan Garg <rohan.garg@intel.com>
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21283>
Rohan Garg [Fri, 10 Feb 2023 14:58:07 +0000 (15:58 +0100)]
anv: drop unused headers
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21283>
Georg Lehmann [Sat, 14 Jan 2023 10:38:25 +0000 (11:38 +0100)]
aco: new 16bit VOP3 opcodes can use opsel
No Foz-DB changes on gfx11.
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20705>
Corentin Noël [Tue, 14 Feb 2023 09:48:18 +0000 (10:48 +0100)]
ci/venus: Skip tests risking out of memory issues
These two dEQP tests:
* dEQP-VK.api.object_management.max_concurrent.graphics_pipeline
* dEQP-VK.api.object_management.max_concurrent.compute_pipeline
Require a lot of memory and might kill crosvm or the renderer server because of EOM
issues. Skip them for now.
Acked-by: Daniel Stone <daniels@collabora.com>
Reviewed-by: Gert Wollny <gert.wollny@collabora.com>
Signed-off-by: Corentin Noël <corentin.noel@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21306>
Samuel Pitoiset [Fri, 10 Feb 2023 09:33:28 +0000 (10:33 +0100)]
radv: ignore registering pipeline libaries with SQTT
They aren't executable pipelines and they might not contain all
shader stages.
This fixes a crash when generating RGP captures with GPL.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21235>
Erik Faye-Lund [Thu, 9 Feb 2023 08:06:53 +0000 (09:06 +0100)]
zink: remove incorrect trailing comma
A trailing comma in a list is not valid JSON. Let's drop it.
Fixes:
f7b2dbb2bdc ("zink: relax bresenhamLines requirement for non-strictLine drivers")
Acked-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21211>
Erik Faye-Lund [Tue, 1 Nov 2022 14:58:28 +0000 (15:58 +0100)]
zink: correct companies in requirements
These contributors don't work for Zink itself, but various companies
who's working on Zink. Add the correct ones.
Acked-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21211>
Michel Dänzer [Fri, 10 Feb 2023 10:56:45 +0000 (11:56 +0100)]
ci: Enable the hasvk Vulkan driver in the fedora-release job
To match the Fedora packaging.
While at it, sort the Vulkan drivers alphabetically.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21236>
Michel Dänzer [Fri, 10 Feb 2023 10:55:43 +0000 (11:55 +0100)]
ci: Enable i915 Gallium driver in fedora-release job
To match the Fedora packaging.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21236>
Michel Dänzer [Fri, 10 Feb 2023 10:54:04 +0000 (11:54 +0100)]
ci: Re-enable intel-clc in fedora-release job
Fedora 36 has new enough llvm-spirv-translator.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21236>
Michel Dänzer [Thu, 9 Feb 2023 16:41:25 +0000 (17:41 +0100)]
ci: Update Fedora image to 36
Fedora 34 is EOL.
With Fedora 37, ccache hangs in a futex syscall in CI for some reason,
so let's go with 36 for now.
v2:
* No need to add -Wno-error=stringop-overflow anymore.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21236>
Michel Dänzer [Mon, 13 Feb 2023 11:54:12 +0000 (12:54 +0100)]
clover: Reserve vector memory in make_text_section
This isn't strictly required, but it works around
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100366 , and it might
avoid a memory reallocation.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21236>
Michel Dänzer [Thu, 9 Feb 2023 17:27:23 +0000 (18:27 +0100)]
anv/grl: Use union for reinterpreting integer as float
Fixes strict aliasing violations flagged by GCC 12:
../src/intel/vulkan/grl/include/GRLOCLCompatibility.h: In function ‘float as_float(uint32_t)’:
../src/intel/vulkan/grl/include/GRLOCLCompatibility.h:182:13: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
182 | return *reinterpret_cast<float*>(&i);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../src/intel/vulkan/grl/include/GRLOCLCompatibility.h: In function ‘float3 as_float3(int3)’:
../src/intel/vulkan/grl/include/GRLOCLCompatibility.h:187:13: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
187 | return *reinterpret_cast<float3*>(&i3);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../src/intel/vulkan/grl/include/GRLOCLCompatibility.h:187:13: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
../src/intel/vulkan/grl/include/GRLOCLCompatibility.h: In function ‘float4 as_float4(int4)’:
../src/intel/vulkan/grl/include/GRLOCLCompatibility.h:192:13: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
192 | return *reinterpret_cast<float4*>(&i4);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../src/intel/vulkan/grl/include/GRLOCLCompatibility.h:192:13: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
Fixes:
5f948503e40c ("anv: Import GRL")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21236>
Mike Blumenkrantz [Sat, 28 Jan 2023 12:50:42 +0000 (07:50 -0500)]
zink: set ZINK_DESCRIPTORS=db for radv jobs
there's no testing for this in ci, and radv has a unique heap/memory
setup which catches allocation regressions
Reviewed-by: Martin Roukala <martin.roukala@mupuf.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20968>
Marcin Ślusarz [Mon, 30 Jan 2023 16:18:04 +0000 (17:18 +0100)]
anv: enable task redistribution
Disabling is no longer needed after "intel/compiler/mesh: use
slice id of task urb handles in mesh shaders".
This reverts commit
4eaecd79657f0cd99f6536fd55a7a14958d6624b.
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/7141
Reviewed-by: Caio Oliveira <caio.oliveira@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21007>
Marcin Ślusarz [Mon, 30 Jan 2023 16:09:26 +0000 (17:09 +0100)]
intel/compiler/mesh: use slice id of task urb handles in mesh shaders
When mesh shader is spawned on a different slice than the originating
task shader, then input task urb handle can come from a different
slice, so masking this information off will load data from the current
slice, instead of the one where real data are.
Reviewed-by: Caio Oliveira <caio.oliveira@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21007>
Lionel Landwerlin [Tue, 31 Jan 2023 21:15:11 +0000 (22:15 +0100)]
anv: implement VK_EXT_vertex_input_dynamic_state
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21026>
Lionel Landwerlin [Tue, 31 Jan 2023 18:55:59 +0000 (19:55 +0100)]
anv: move 3DSTATE_VERTEX_ELEMENT emission to dynamic path
Prep work for VK_EXT_vertex_input_dynamic_state
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21026>
Lionel Landwerlin [Tue, 31 Jan 2023 19:09:36 +0000 (20:09 +0100)]
anv: remove copied information from runtime graphics state
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21026>
Marcin Ślusarz [Fri, 27 Jan 2023 14:58:35 +0000 (15:58 +0100)]
anv: fix how unset gl_Viewport & gl_Layer are handled in mesh case
See also:
c6f69eea6ac ("anv/pipeline: Properly handle unset gl_Layer and gl_ViewportIndex")
Reviewed-by: Caio Oliveira <caio.oliveira@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17620>
Marcin Ślusarz [Fri, 15 Jul 2022 09:53:39 +0000 (11:53 +0200)]
intel/compiler: replace gl_Layer & gl_ViewportIndex by 0 in fs if ms doesn't write it
Reviewed-by: Caio Oliveira <caio.oliveira@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17620>
Samuel Pitoiset [Wed, 8 Feb 2023 10:38:25 +0000 (11:38 +0100)]
radv: disable DCC for mipmaps on GFX11
It seems broken but can't really figure out why and DCC levels aren't
interleaved on GFX11. Skipping DCC initialization for levels seems to
also fix it but seems safer to disable completely, as a hotfix.
Fixes DCC issues with Hi-Fi Rush, Sonic Frontiers, Hogwarts Legacy
and probably more.
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/8230
Cc: mesa-stable
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21186>
Emma Anholt [Mon, 13 Feb 2023 21:10:40 +0000 (13:10 -0800)]
ci/etnaviv: Update deqp xfails for gc2000.
More of a mixed bag here than gc7000, but at least the status is stable
in the last 3 nightly runs.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21294>
Emma Anholt [Mon, 13 Feb 2023 21:07:11 +0000 (13:07 -0800)]
ci/etnaviv: Drop stale xfails from gc7000.
These have passed in 3/3 of the last nightly runs. Congrats, etnaviv!
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21294>
Emma Anholt [Mon, 13 Feb 2023 20:08:57 +0000 (12:08 -0800)]
ci/radv: Add a skip for navi21-llvm for a test that consistently timeouts.
I had seen this in my last round of work, but forgot to git add the skips
file.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21294>
Mike Blumenkrantz [Mon, 13 Feb 2023 21:43:21 +0000 (16:43 -0500)]
zink: verify compressed format layer count when creating surfaces
this is illegal for some cases, and mesa/st is equipped to handle
per-layer copying here
fixes #8283
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21292>
Mike Blumenkrantz [Mon, 13 Feb 2023 19:56:06 +0000 (14:56 -0500)]
zink: don't handle mutable init on surface creation with tc enabled
using the cmdbuf during this call is illegal and causes desync, thus
the initialization has to be deferred until the surface is bound
fixes #7579
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21292>
Mike Blumenkrantz [Mon, 13 Feb 2023 19:55:31 +0000 (14:55 -0500)]
zink: const-ify a surface param
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21292>
Mike Blumenkrantz [Mon, 13 Feb 2023 19:55:14 +0000 (14:55 -0500)]
zink: break out pipe_surface init for new surface creation
no functional changes
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21292>
Mike Blumenkrantz [Mon, 13 Feb 2023 19:53:43 +0000 (14:53 -0500)]
zink: account for null surface when trying to retain clears on fb bind
not currently possible but will be soon
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21292>
Mike Blumenkrantz [Mon, 13 Feb 2023 19:52:57 +0000 (14:52 -0500)]
zink: only try for a fb rebind if fb binds exist in rebind_image()
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21292>
Mike Blumenkrantz [Mon, 13 Feb 2023 19:52:33 +0000 (14:52 -0500)]
zink: fix indentation of rebind_image()
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21292>
Dave Airlie [Tue, 14 Feb 2023 00:58:45 +0000 (10:58 +1000)]
crocus: switch gen4/5 tiling flags to follow suggestions.
Fixes:
6043f66dd332 ("crocus: disable Y tiling for render targets properly.")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21300>
Eric Engestrom [Mon, 13 Feb 2023 22:12:04 +0000 (22:12 +0000)]
broadcom/ci: mark test as flaky
It passed once here: https://gitlab.freedesktop.org/gdevi/mesa/-/jobs/
36317041
Signed-off-by: Eric Engestrom <eric@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21295>
Emma Anholt [Mon, 13 Feb 2023 21:20:22 +0000 (13:20 -0800)]
Revert "freedreno/a5xx: Fix clip_mask"
This reverts commit
2dfebf34874b5365156d254c2c1ba2ecc5262deb.
It causes GPU hangs in piglit tests like
spec@glsl-1.20@execution@clipping@vs-clip-vertex-enables, for reasons I'm
totally unclear on. The commit was not necessary, because the frontend
lowering already handles disabled clip planes by storing 0.0 to the
corresponding clipdist array element in that shader variant. Add a note
to that effect.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21298>
Emma Anholt [Mon, 13 Feb 2023 20:13:32 +0000 (12:13 -0800)]
ci/freedreno: Update manual-run xfails for a530.
While I'm having a hard time stabilizing most of the test list on this HW
due to the clip-enable GPU hangs leaking into random other tests, these
have been consistent in the last 4 runs.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21298>
Giancarlo Devich [Thu, 9 Feb 2023 23:26:00 +0000 (15:26 -0800)]
d3d12: Don't clear d3d12_shader_key
The shader key structure is quite large and memsetting it to zero to be
able to create or often simply find an existing shader is responsible
for a large portion of CPU usage during benchmarks.
This change is more surgical about what, when, and how things get
cleared.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21247>
Giancarlo Devich [Fri, 10 Feb 2023 23:30:09 +0000 (15:30 -0800)]
nir: Check sampler_binding is valid when lowering tex shadow
Reviewed-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21247>
Giancarlo Devich [Thu, 9 Feb 2023 23:22:51 +0000 (15:22 -0800)]
d3d12: Add unions to encompass shader key stage vars, use in hashing
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21247>
Giancarlo Devich [Thu, 9 Feb 2023 20:34:17 +0000 (12:34 -0800)]
d3d12: Use varying comparison function for TESS stage key compare
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21247>
Alan Coopersmith [Fri, 3 Feb 2023 21:12:38 +0000 (13:12 -0800)]
util/disk_cache: Handle OS'es without d_type in struct dirent
Needed to build on Solaris
Fixes:
f58e6fee745 ("util/disk_cache: delete more cache items in one go when full")
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Reviewed-by: Eric Engestrom <eric@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21110>
Mike Blumenkrantz [Wed, 8 Feb 2023 20:36:51 +0000 (15:36 -0500)]
zink: always use NEAREST for zs blits
LINEAR is illegal, and swapping filtering at this point still
seems to be conformant given questionable GL spec requirements for
LINEAR zs filtering
cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21203>
Konstantin Seurer [Sat, 14 Jan 2023 12:38:09 +0000 (13:38 +0100)]
radv/rra: Hide deferred accel struct data destruction behind an env var
Keeping around copies of the BVHs in CPU memory can cause issues with
Applications creating a large amount of acceleration structures (Control).
This commit adds back the old path of copying acceleration structures
while still keeping the deferred, possibly more accurate path around.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20700>
Konstantin Seurer [Sat, 14 Jan 2023 12:20:05 +0000 (13:20 +0100)]
radv/rra: Find copy memory index when initializing the trace state
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20700>
Lionel Landwerlin [Mon, 13 Feb 2023 07:18:28 +0000 (09:18 +0200)]
anv/hasvk: handle a SAMPLED_READ/STORAGE_READ access flags
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Cc: mesa-stable
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21277>
SoroushIMG [Mon, 13 Feb 2023 14:38:26 +0000 (14:38 +0000)]
zink: free resource objects' views array during destruction
since the array is not ralloc managed, it has be explicitly freed.
cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21285>
SoroushIMG [Sun, 12 Feb 2023 17:13:48 +0000 (17:13 +0000)]
zink: stop creating pipeline library cache for non-optimal_key drivers
currently the nin-optimal codepath doesn't use this at all and this just
leaks memory due to not handling non-tcs generated shaders.
Fixes:
487ac6dbd60 ("zink: implement cross-program pipeline library sharing")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21285>
SoroushIMG [Sun, 12 Feb 2023 17:05:15 +0000 (17:05 +0000)]
zink: allocate program shader caches from the program's mem ctx
these will now be freed when the program itself is freed.
cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21285>
SoroushIMG [Sun, 12 Feb 2023 00:36:29 +0000 (00:36 +0000)]
zink: fix compute shader leaks
Compute program owns the nir and zink shaders now and must free them
too when destroyed.
Fixes:
4cb4bb555e7 ("zink: create compute programs from compute shaders directly")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21285>
Michel Zou [Fri, 10 Feb 2023 16:46:46 +0000 (17:46 +0100)]
ci/mingw: drop useless -Wno-error flags
Will prevent merging incorrect code like in #8260
Reviewed-by: Yonggang Luo <luoyonggang@gmail.com>
Acked-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21244>
Chia-I Wu [Sat, 11 Feb 2023 00:39:46 +0000 (16:39 -0800)]
radv: fix a hang with binning on CHIP_RENOIR
Using (6, 16) for (context_states_per_bin, persistent_states_per_bin)
causes gpu hang in RDR2 benchmark on CHIP_RENOIR. Follow radeonsi and
use (3, 8) instead.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21254>
osy [Mon, 19 Dec 2022 02:29:50 +0000 (18:29 -0800)]
virgl: enable timer queries only if host supports it
Timer queries is tied to GL_ARB_timer_query/GL_EXT_disjoint_timer_query
support on the host. We have a flag that detects this so lets use it.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20380>
Alyssa Rosenzweig [Sat, 21 Jan 2023 21:25:13 +0000 (16:25 -0500)]
pan/decode: Add support for decoding CSF
Add support to pandecode for Mali architecture v10, featuring the new command
stream frontend (CSF). This replaces the "job chain" with a new Command
Execution Unit (CEU) that runs a domain-specific assembly language. That
requires us to refactor pandecode substantially, splitting out JM-only code from
shared JM/CSF common code, and adding new CSF-only decode routines to
disassemble and interpret CSF command streams and pretty-printing the
data structures hit.
This is of course impossible to do properly, since the CEU is pretty easily
Turing-complete and hence subject to the halting problem. But we implement some
simple heuristics to follow jumps that are just good enough for the simple
command streams emitting by both the DDK and Panfrost.
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20837>
Alyssa Rosenzweig [Sat, 11 Feb 2023 03:12:26 +0000 (22:12 -0500)]
panfrost: Fix some fields in v10.xml
Correct some errors from the file's initial check in, as we're about to add
corresponding pandecode changes for the file.
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20837>
Alyssa Rosenzweig [Sun, 12 Feb 2023 17:19:58 +0000 (12:19 -0500)]
asahi: Implement indirect draws
Passes dEQP-GLES31.functional.draw_indirect.*
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21273>
Alyssa Rosenzweig [Sun, 12 Feb 2023 17:14:13 +0000 (12:14 -0500)]
asahi: Refactor index buffer upload for indirect
We need to avoid the reference to draws->count when indirect draws are used, as
it is not available CPU side.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21273>
Alyssa Rosenzweig [Sun, 12 Feb 2023 17:22:47 +0000 (12:22 -0500)]
asahi: Remove default=true on index list values
These will cause issues with indirect draws.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21273>
Alyssa Rosenzweig [Tue, 7 Feb 2023 18:27:08 +0000 (13:27 -0500)]
panvk: Disable SNORM rendering
Driver isn't ready for this yet.
7f98a9ba2bd ("panfrost: Implement
GL_EXT_render_snorm on Bifrost+") caused piles of tests to go from NotSupported
-> Fail, so let's functionally revert that.
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21257>