Emma Anholt
53780b7a3a
egl/kopper: Use the kopper private interface for swapBuffers.
...
I'm going to be introducing an extra flag to indicate EGL vs GLX behavior
in the private interface.
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Reviewed-by: Adam Jackson <ajax@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21317 >
2023-02-15 19:17:07 +00:00
Emma Anholt
3e1b40be54
egl: Add a note explaining the swapBuffers badness in dri2_x11_copy_buffers().
...
I tried to drop the swapBuffers path, but it turns out it's being taken by
softpipe/llvmpipe, and the tests are passing. The piglit egl-copy-buffers
test even passes on zink, but you end up with a bad display because of an
un-preserved back buffer.
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21317 >
2023-02-15 19:17:07 +00:00
Emma Anholt
a6b850e335
egl/kopper: Add assert for no kopper in dri2_copy_region.
...
This shouldn't be doing a swapBuffers, that's not what this function is
supposed to do. But also, we shouldn't be doing this from zink, which the
swap was introduced for, because we don't implement the extension. Cleans
up some strangeness from 3c4be122cc
("egl: implement more hooks for
swrast")
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Reviewed-by: Adam Jackson <ajax@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21317 >
2023-02-15 19:17:07 +00:00
Erik Faye-Lund
24a32b2cab
Revert "meson: Fix Asahi build on macOS"
...
This reverts commit 4ca4a05627
.
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 >
2023-02-15 18:35:14 +00:00
Erik Faye-Lund
29ffc79410
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: b39958a3a1
("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 >
2023-02-15 18:35:14 +00:00
Erik Faye-Lund
7ea85871fe
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: b39958a3a1
("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 >
2023-02-15 18:35:14 +00:00
Mike Blumenkrantz
f5bde99cbd
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 >
2023-02-15 18:06:16 +00:00
Samuel Pitoiset
073cced868
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 >
2023-02-15 17:29:10 +00:00
Constantine Shablya
bd848ac92d
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 >
2023-02-15 16:46:59 +00:00
Constantine Shablya
5053527806
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 >
2023-02-15 16:46:59 +00:00
David Rosca
9873ccb071
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 >
2023-02-15 14:26:31 +00:00
Kai Wasserbäch
e832d6a1bb
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: d4f38ef288/llvm/include/llvm/ADT/None.h
Reviewed-by: Karol Herbst <kherbst@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21125 >
2023-02-15 12:00:06 +00:00
Danylo Piliaiev
b7ab83d59f
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 >
2023-02-15 09:49:39 +00:00
Karmjit Mahil
e089166776
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 >
2023-02-15 09:29:21 +00:00
Karmjit Mahil
c75c58e54c
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 >
2023-02-15 09:16:03 +00:00
Karmjit Mahil
d6408e08df
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 >
2023-02-15 09:16:03 +00:00
Nanley Chery
5d24682aae
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 >
2023-02-15 05:49:23 +00:00
Nanley Chery
7c367bef0d
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 >
2023-02-15 05:49:23 +00:00
Nanley Chery
ad9c0b7a84
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 >
2023-02-15 05:49:23 +00:00
Yonggang Luo
9e934ee068
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 >
2023-02-15 03:42:02 +00:00
Yonggang Luo
2626946490
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 >
2023-02-15 03:42:02 +00:00
Eric Engestrom
4ff295e1d8
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 >
2023-02-15 02:53:54 +00:00
Eric Engestrom
1fa68d91c6
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 >
2023-02-15 02:53:54 +00:00
Eric Engestrom
e0adef2652
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 >
2023-02-15 02:53:54 +00:00
Eric Engestrom
0404918f61
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 >
2023-02-15 02:53:54 +00:00
Eric Engestrom
ef564f9391
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 >
2023-02-15 02:53:54 +00:00
Eric Engestrom
de90690aba
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 >
2023-02-15 02:53:54 +00:00
Mike Blumenkrantz
0337acad15
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 >
2023-02-15 01:49:30 +00:00
Mark Janes
4b97e349cd
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 >
2023-02-15 01:10:42 +00:00
Mike Blumenkrantz
f0e1512673
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 >
2023-02-14 23:52:34 +00:00
Mike Blumenkrantz
120a506e70
Revert "zink: always use NEAREST for zs blits"
...
This reverts commit 067545eb9a
.
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 >
2023-02-14 23:52:34 +00:00
Eric Engestrom
6ac830ccb1
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 >
2023-02-14 23:28:29 +00:00
Eric Engestrom
a654a303f8
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 >
2023-02-14 23:28:29 +00:00
Eric Engestrom
ca98e4446b
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 >
2023-02-14 23:28:29 +00:00
Jesse Natalie
87e83ce58e
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 >
2023-02-14 23:28:29 +00:00
Lionel Landwerlin
9ac192d79d
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: 530de844ef
("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 >
2023-02-14 21:29:42 +00:00
Mike Blumenkrantz
0d445cfb7e
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 >
2023-02-14 20:06:16 +00:00
Georg Lehmann
4fbcd046ce
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: baab6f18c9
("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 >
2023-02-14 19:15:17 +00:00
Faith Ekstrand
41b0407d5c
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 >
2023-02-14 17:54:12 +00:00
Kenneth Graunke
3e09a636db
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 >
2023-02-14 17:54:12 +00:00
Kenneth Graunke
b1ebd9978c
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 >
2023-02-14 17:54:11 +00:00
Kenneth Graunke
8343d7fd2a
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 >
2023-02-14 17:54:11 +00:00
Erik Faye-Lund
139dd4e772
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 >
2023-02-14 17:22:14 +00:00
Rohan Garg
d64000dbb3
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 >
2023-02-14 16:55:21 +00:00
Rohan Garg
80790f50db
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 >
2023-02-14 16:55:21 +00:00
Rohan Garg
4e61191065
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 >
2023-02-14 16:55:21 +00:00
Rohan Garg
5bb217a07a
anv: drop unused headers
...
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21283 >
2023-02-14 16:55:21 +00:00
Georg Lehmann
281a505ef0
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 >
2023-02-14 16:14:55 +00:00
Corentin Noël
e8091a6593
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 >
2023-02-14 15:56:20 +00:00
Samuel Pitoiset
fa66c8954e
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 >
2023-02-14 15:03:45 +00:00