Daniel Stone
0b976bd48d
egl/wayland: Assume modern DRI interface versions
...
We know what version the DRI_IMAGE extension is, and it's higher than 7.
Signed-off-by: Daniel Stone <daniels@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24347 >
2023-07-28 12:25:19 +00:00
Daniel Stone
b3ec7c2a9e
egl/wayland: Never use DRI2_LOADER extension
...
We don't need this anymore; the image loader extension does everything
we want it to and more, and is mandatory when we load.
Signed-off-by: Daniel Stone <daniels@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24347 >
2023-07-28 12:25:19 +00:00
Daniel Stone
45b9b0ba32
egl/wayland: Add image loader extension for swrast
...
It doesn't hurt to have it here, so might as well.
Signed-off-by: Daniel Stone <daniels@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24347 >
2023-07-28 12:25:19 +00:00
Daniel Stone
449e5bad7c
egl/wayland: Always initialise fd_display_gpu
...
Set it to an invalid value, rather than leaving it to be stdout or
something.
Signed-off-by: Daniel Stone <daniels@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24347 >
2023-07-28 12:25:19 +00:00
Daniel Stone
08bfc7395e
egl/dri2: Don't look up image extension twice
...
We already look up the image driver extension inside
dri2_core_extensions, so don't do it again in the optional extensions -
just do it in the swrast path so we have it covered for both.
Signed-off-by: Daniel Stone <daniels@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24347 >
2023-07-28 12:25:19 +00:00
Daniel Stone
00aa095d53
dri: Support 1555/4444 formats
...
Add support for 1555 and 4444 formats, both in RGB/BGR ordering, with
and without alpha.
These are already supported by Gallium and drivers, but not yet for
winsys surfaces. Adding these is enough to make them renderable when
using Weston on iris.
Signed-off-by: Daniel Stone <daniels@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24331 >
2023-07-28 12:44:01 +01:00
Konstantin Seurer
0a07431e9a
llvmpipe: Zero extend vectors in widen_to_simd_width
...
Extending using the first element vould extend the exec_mask (-1, 0, 0,
0) to (-1, 0, 0, 0, -1, -1, -1, -1).
Fixes: 573b8f2 ("gallivm: Implement vulkan textures")
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/9435
Reviewed-by: Dave Airlie <airlied@redhat.com >
Reviewed-by: Roland Scheidegger <sroland@vmware.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24340 >
2023-07-28 11:05:06 +00:00
Samuel Pitoiset
0d75fc8e42
radv: remove radv_shader_info::tes::num_linked_patch_inputs
...
It's never used.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24346 >
2023-07-28 08:21:40 +00:00
Samuel Pitoiset
f04577b789
radv: add support for dynamic TCS vertices out for TES
...
With shader object, if TES is compiled without a TCS, the number of
TCS vertices out might not be known at compile time and it needs to be
loaded from a user SGPR.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24346 >
2023-07-28 08:21:40 +00:00
Samuel Pitoiset
faa756b3ba
radv: copy the number of TCS vertices out to TES shader info
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24346 >
2023-07-28 08:21:40 +00:00
Samuel Pitoiset
e855c7dd3d
radv: stop checking if patch control points is dynamic everywhere
...
Check that the values are non-zero instead.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24346 >
2023-07-28 08:21:40 +00:00
Samuel Pitoiset
a50cec9e18
radv: use a packed user SGPR for the TES state
...
It only contains the number of tessellation patches for now, but it
will be used to pass the number of TCS vertices out for shader object.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24346 >
2023-07-28 08:21:40 +00:00
Samuel Pitoiset
7ee74881d9
radv: prevent linking TCS<->TES when TES is NULL
...
This can happen with shader object.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24346 >
2023-07-28 08:21:40 +00:00
Samuel Pitoiset
54414a2121
radv: initialize tcs.tes_{patch}_inputs_read to a default value
...
For shader object when a TCS is not linked to a TES at compile time.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24346 >
2023-07-28 08:21:40 +00:00
Samuel Pitoiset
afa5b83152
radv: do not always copy the number of tess patches to TES
...
This is only needed when the number of patch control points is known
at compile time. Adding a check makes it less confusing.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24346 >
2023-07-28 08:21:40 +00:00
Samuel Pitoiset
f1b98f32c4
radv: stop lowering patch vertices for TES
...
This intrinsic is replaced during ABI lowering later.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24346 >
2023-07-28 08:21:40 +00:00
Samuel Pitoiset
40a693e056
radv: stop copying some NIR info fields from TES to TCS
...
They aren't used, only TES needs to know them.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24346 >
2023-07-28 08:21:40 +00:00
Alex Denes
16a66a67ef
virgl: link VA driver with build-id
...
Without a build-id the virgl VAAPI driver segfaults trying to access the
NULL returned by the build-id header retriever used for disk caches
Fixes: d6db4d2e08 ("virgl: Add simple disk cache")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19885 >
2023-07-28 07:51:11 +00:00
Samuel Pitoiset
76cc85ebb9
radv: compute the legacy GS info earlier
...
This allows geometry shaders to work with shader object on GFX6-8
because the workgroup size is the wave size. We will need different
tweaks for NGG but that's for later.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24333 >
2023-07-28 08:55:48 +02:00
Samuel Pitoiset
329907178e
radv: use next stage to determine if primID/clip dist should be exported
...
More shader object friendly.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24333 >
2023-07-28 08:55:12 +02:00
Samuel Pitoiset
48fc29e075
radv: use next_stage to determine if the layer should be exported
...
More shader object friendly.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24333 >
2023-07-28 08:55:12 +02:00
Samuel Pitoiset
8ab8145aa1
radv: add support for VS/TES as ES without shaders IO linking
...
This implements fixed IO location for VS/TES with GS. This is currently
unused because everything is linked with GPL or monolithic pipelines,
but this will be used for shader object.
Tested by running full CTS after disabling NIR IO linking for VS/TES.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24328 >
2023-07-28 06:51:24 +00:00
Samuel Pitoiset
2e7ea0fc24
radv: track whether inputs/outputs are linked per shader stage
...
With shader object, it's possible to compile shaders without any
linking.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24328 >
2023-07-28 06:51:24 +00:00
Benjamin Cheng
3629b43822
radv/video: use app provided hevc scaling list order
...
This partially reverts commit da54b578 .
Vulkan spec defers the definition of these lists to the H265 ITU spec,
which defines the scaling lists to be in "up-right diagonal scan order"
already.
Fixes: da54b578 ("radv/video: fix hevc scaling lists.")
Reviewed-by: Lynne <dev@lynne.ee >
Reviewed-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24356 >
2023-07-28 12:35:26 +10:00
Lionel Landwerlin
87149cc545
blorp: update and move fast clear PIPE_CONTROLs to drivers
...
Before this patch, when updating the indirect clear color, BLORP only
invalidated the texture cache on gfx11. The hardware docs state that
the texture cache invalidation is also needed on gfx12 however. Add
this invalidation for gfx12 and move the fast-clear related cache
invalidations to the drivers for clarity and performance.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Cc: mesa-stable
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/5850
Reviewed-by: Nanley Chery <nanley.g.chery@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23588 >
2023-07-28 00:07:15 +00:00
Lionel Landwerlin
c94bd56114
blorp: switch blorp_update_clear_color to early return
...
Avoid even going to the function if we don't need to.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Nanley Chery <nanley.g.chery@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23588 >
2023-07-28 00:07:15 +00:00
Karol Herbst
85a31fa1fc
nv50/ir/nir: fix txq emission on MS textures
...
In GL and a lot of Vulkan if we end up with either a lod or an ms index.
Sadly in Vulkan we can end up with both and have to choose properly. For
TXQ we have to emit a zero LOD. For TXF we have to emit the ms index.
Fixes: bb032d8b62 ("nv50/ir/nir: implement nir_instr_type_tex")
Signed-off-by: Karol Herbst <git@karolherbst.de >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24343 >
2023-07-27 22:49:05 +00:00
Yiwei Zhang
6b2956e569
ci/venus: reenable pipeline cts
...
Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24344 >
2023-07-27 20:32:18 +00:00
Yiwei Zhang
9e05ef823c
ci/venus: remove fixed tests that no longer run
...
Those multiview failures have been fixed in lvp while the EDS failure
tests are obsolete.
Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24344 >
2023-07-27 20:32:18 +00:00
Mike Blumenkrantz
626e3a6e34
zink: don't clobber descriptor mode on multiple screen creation
...
the env var should only ever be read if the mode is unset
cc: mesa-stable
Reviewed-by: Adam Jackson <ajax@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24075 >
2023-07-27 19:18:22 +00:00
Mike Blumenkrantz
f9d62b4c0b
kopper: determine modifier support per-drawable
...
this should more accurately block modifier usage when not supported
Reviewed-by: Adam Jackson <ajax@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24075 >
2023-07-27 19:18:22 +00:00
Mike Blumenkrantz
a9efabd8f3
kopper: pass modifier availability to drawable creation
...
Reviewed-by: Adam Jackson <ajax@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24075 >
2023-07-27 19:18:21 +00:00
Mike Blumenkrantz
1887368df4
glx/sw: check for modifier support in the kopper path
...
Reviewed-by: Adam Jackson <ajax@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24075 >
2023-07-27 19:18:21 +00:00
Mike Blumenkrantz
5589d2b556
glx/dri3: split out modifier check
...
Reviewed-by: Adam Jackson <ajax@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24075 >
2023-07-27 19:18:21 +00:00
Mike Blumenkrantz
6b0f8973c9
kopper: move pixmap param for drawable creation to info struct
...
no functional changes
Reviewed-by: Adam Jackson <ajax@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24075 >
2023-07-27 19:18:21 +00:00
Mike Blumenkrantz
7100ef4566
glxsw: check geometry of drawables on creation
...
this mimics the dri codepath and allows early rejection of invalid
drawables to avoid subsequent breakage
cc: mesa-stable
Reviewed-by: Adam Jackson <ajax@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24075 >
2023-07-27 19:18:21 +00:00
Mike Blumenkrantz
2b71e645bc
kopper: handle pixmap creation failure more gracefully
...
cc: mesa-stable
Reviewed-by: Adam Jackson <ajax@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24075 >
2023-07-27 19:18:21 +00:00
Iván Briano
71ebd9b9d7
anv,hasvk: respect provoking vertex setting on geometry shaders
...
We need to set the right value on ReorderMode based on the provoking
vertex mode, or the order in which the vertices for tristrip[_adj] are
delivered to the geometry shader doesn't match what Vulkan expects.
Fixes
dEQP-VK.transform_feedback.primitives_generated_query.concurrent.*triangle_strip_with_adjacency*
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23243 >
2023-07-27 18:52:49 +00:00
Eric Engestrom
88deb4bb88
ci: print clang-format's version
...
Signed-off-by: Eric Engestrom <eric@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24302 >
2023-07-27 17:33:59 +00:00
Eric Engestrom
02e40d3b48
ci: print rustfmt's version
...
Signed-off-by: Eric Engestrom <eric@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24302 >
2023-07-27 17:33:59 +00:00
Caio Oliveira
e693fd815a
nir: Let nir_fixup_deref_modes() fix deref_casts when possible
...
If a deref_cast parent is also a deref, and the parent mode is not
generic, we can safely propagate the parent mode down to the
deref_cast.
This will allow the fixup to work when the deref_cast is used just
to change the glsl_type when accessing a variable/deref-chain.
Reviewed-by: Faith Ekstrand <faith@gfxstrand.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23734 >
2023-07-27 16:20:36 +00:00
David Heidelberg
38d1e73868
ci/kdl: remove extra-verbose ls command
...
Not needed for non-debugging builds.
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/9422
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24348 >
2023-07-27 18:31:53 +03:00
Rohan Garg
4aeac9f21c
iris: allow for a unsynchronized device reset query
...
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/24224 >
2023-07-27 13:43:38 +00:00
Rohan Garg
2756534660
iris: track reset signalling instead of replacing the context
...
Instead of creating a new context when a reset is encountered, we now
track whether the reset was reported back to the application. According
to the spec, the application should poll the reset status and recreate
the context when NO_ERROR encountered after a RESET.
From the EXT_robustness spec:
5. How should the application react to a reset context event?
RESOLVED: For this extension, the application is expected to query
the reset status until NO_ERROR is returned. If a reset is encountered,
at least one *RESET* status will be returned. Once NO_ERROR is again
encountered, the application can safely destroy the old context and
create a new one.
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/24224 >
2023-07-27 13:43:38 +00:00
David Rosca
e52f7d5cb9
gallium/auxiliary/vl: Fix chroma offset of compute_shader_weave
...
Truncate UV coordinates to fix incorrect chroma offset.
Adjust texture offsets to match this change:
0.5 on X
0.25 on Y (interlaced)
Reviewed-by: Thong Thai <thong.thai@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24301 >
2023-07-27 13:16:10 +00:00
David Rosca
3a484cd4ea
gallium/auxiliary/vl: Fix chroma and blurry output of cs video_buffer
...
Truncate UV coordinates to fix incorrect chroma offset.
Add texture offset to avoid blur from linear sampler.
Reviewed-by: Thong Thai <thong.thai@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24301 >
2023-07-27 13:16:10 +00:00
Rhys Perry
59f24c7df8
nir/lower_shader_calls: vectorize stack access for all shaders
...
fossil-db (gfx1100):
Totals from 9 (0.01% of 133461) affected shaders:
MaxWaves: 156 -> 158 (+1.28%)
Instrs: 37193 -> 37324 (+0.35%)
CodeSize: 191008 -> 191968 (+0.50%)
VGPRs: 816 -> 804 (-1.47%)
Latency: 75789 -> 75641 (-0.20%); split: -0.35%, +0.15%
InvThroughput: 10475 -> 10441 (-0.32%); split: -0.40%, +0.08%
VClause: 666 -> 663 (-0.45%); split: -0.75%, +0.30%
SClause: 1077 -> 1076 (-0.09%)
Copies: 3425 -> 3407 (-0.53%); split: -0.73%, +0.20%
PreVGPRs: 770 -> 745 (-3.25%)
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24334 >
2023-07-27 12:38:01 +00:00
Mike Blumenkrantz
318d0316dd
zink: fix the fix for separate shader program refcounting
...
the previous fix fixed the initial refcount but then left a dangling
ref when doing the optimized program replacement
Fixes: 4e38061643 ("zink: fix separate shader program refcounting")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24255 >
2023-07-27 11:59:21 +00:00
Eric Engestrom
70eff58767
ci: allow hw jobs even if lint jobs fail for non-Marge pipelines
...
Signed-off-by: Eric Engestrom <eric@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24257 >
2023-07-27 11:24:24 +00:00
Eric Engestrom
b4bcb1a567
ci/lint: also print a diff for rust format issues
...
Signed-off-by: Eric Engestrom <eric@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24257 >
2023-07-27 11:24:24 +00:00