Boris Brezillon
086bcbe186
pan: Use a consistent pan_ prefix across src/panfrost/*
...
We've been inconsistenly using panfrost_ and pan_ as a prefix for
the common helpers/structs. Let's finally make a clear cut by
prefixing everything that lives in src/panfrost/* with pan_.
No functional changes here, this is just renaming and reformatting
changes.
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Eric R. Smith <eric.smith@collabora.com >
Reviewed-by: Mary Guillemard <mary.guillemard@collabora.com >
Acked-by: Daniel Stone <daniels@collabora.com >
Reviewed-by: Ryan Mckeever <ryan.mckeever@collabora.com >
Reviewed-by: Olivia Lee <olivia.lee@collabora.com >
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34767 >
2025-05-21 14:58:20 +02:00
Boris Brezillon
a936013311
pan: Draw a clear line between image layout, image and texture helpers
...
This involves moving helpers in separate pan_{layout,image,texture}.{c,h}
files, and renaming some of the helper/structs to clarify their purpose.
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Eric R. Smith <eric.smith@collabora.com >
Reviewed-by: Mary Guillemard <mary.guillemard@collabora.com >
Acked-by: Daniel Stone <daniels@collabora.com >
Reviewed-by: Ryan Mckeever <ryan.mckeever@collabora.com >
Reviewed-by: Olivia Lee <olivia.lee@collabora.com >
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34767 >
2025-05-21 14:58:16 +02:00
Boris Brezillon
c847d4fac3
pan/layout: Refactor WSI explicit image layout support
...
There's no point exposing a panfrost_from_legacy_stride() if all
users of pan_image_layout_init() passing an explicit layout
fill pan_image_explicit_layout::row_pitch_B with the result of
panfrost_from_legacy_stride(). We can directly calculate the row stride
inside pan_image_layout_init().
While at it, replace panfrost_get_legacy_stride() by a
pan_image_layout_get_wsi_layout() helper.
Note that we need to adjust the LegacyStride unittests to take the
alignment constraints into account, which is probably a good thing
awyway.
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Mary Guillemard <mary.guillemard@collabora.com >
Acked-by: Daniel Stone <daniels@collabora.com >
Reviewed-by: Ryan Mckeever <ryan.mckeever@collabora.com >
Reviewed-by: Olivia Lee <olivia.lee@collabora.com >
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34767 >
2025-05-21 14:58:12 +02:00
Boris Brezillon
a794ea6f9f
pan: Consolidate AFRC helpers in a single source file
...
Create a pan_afrc.h header gathering all AFRC-related helpers spread
across pan_layout.c, pan_texture.{c,h} and pan_afbc.c.
By making them inline functions, we also allow for extra compile-time
optimizations.
While at it, we pick a consistent pan_ prefix instead of the
pan_/panfrost_ mix we currently have.
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Eric R. Smith <eric.smith@collabora.com >
Reviewed-by: Mary Guillemard <mary.guillemard@collabora.com >
Acked-by: Daniel Stone <daniels@collabora.com >
Reviewed-by: Ryan Mckeever <ryan.mckeever@collabora.com >
Reviewed-by: Olivia Lee <olivia.lee@collabora.com >
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com >
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34767 >
2025-05-21 14:57:55 +02:00
Boris Brezillon
0807d26a29
pan: Consolidate AFBC helpers in a single source file
...
Create a pan_afbc.h header gathering all AFBC-related helpers spread
across pan_layout.c, pan_texture.{c,h} and pan_afbc.c.
By making them inline functions, we also allow for extra compile-time
optimizations.
While at it, we pick a consistent pan_ prefix instead of the
pan_/panfrost_ mix we currently have.
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Eric R. Smith <eric.smith@collabora.com >
Reviewed-by: Mary Guillemard <mary.guillemard@collabora.com >
Acked-by: Daniel Stone <daniels@collabora.com >
Reviewed-by: Ryan Mckeever <ryan.mckeever@collabora.com >
Reviewed-by: Olivia Lee <olivia.lee@collabora.com >
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com >
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34767 >
2025-05-21 14:57:37 +02:00
Boris Brezillon
cea9b04b59
pan: Rename/move panfrost_format_supports_mtk_tiled()
...
Use pan_ instead of panfrost_ as a prefix, and move the function to
pan_format.h, since this modifier has nothing to do with AFBC. We keep
it in pan_format.h since the amount of code doesn't justify having a
separate file for MTK tiling.
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Eric R. Smith <eric.smith@collabora.com >
Reviewed-by: Mary Guillemard <mary.guillemard@collabora.com >
Acked-by: Daniel Stone <daniels@collabora.com >
Reviewed-by: Ryan Mckeever <ryan.mckeever@collabora.com >
Reviewed-by: Olivia Lee <olivia.lee@collabora.com >
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com >
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34767 >
2025-05-21 14:57:14 +02:00
Boris Brezillon
ce7667b4a9
pan/format: Change the way we expose supported modifiers
...
Let's turn the pan_best_modifiers[] array into a PAN_SUPPORTED_MODIFIERS()
macro, such that:
- we don't have to update PAN_MODIFIER_COUNT when adding new modifiers
- we can let the compiler see through the values inside this array and
possibly optimize the modifier selection loop
While at it, we move this new PAN_SUPPORTED_MODIFIERS() macro to
pan_format.h, since modifiers and formats are kinda related, and
pan_layout.c/pan_texture.h were not a great fit.
Also move the drm_is_xxx() macros to pan_format.h, to be consistent.
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Eric R. Smith <eric.smith@collabora.com >
Reviewed-by: Mary Guillemard <mary.guillemard@collabora.com >
Acked-by: Daniel Stone <daniels@collabora.com >
Reviewed-by: Ryan Mckeever <ryan.mckeever@collabora.com >
Reviewed-by: Olivia Lee <olivia.lee@collabora.com >
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com >
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34767 >
2025-05-21 14:56:56 +02:00
Boris Brezillon
67e574f1bd
pan: Drop the format argument passed to drm_is_mtk_tiled()
...
It's not used, and we shouldn't have to check the format to identify
a modifier anyway.
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com >
Reviewed-by: Mary Guillemard <mary.guillemard@collabora.com >
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com >
Acked-by: Eric R. Smith <eric.smith@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34767 >
2025-05-21 14:55:40 +02:00
Boris Brezillon
022e3cb66a
pan/format: Make pan_format::bind a 5-bit field
...
This way, a pan_format instance fits into a single u32. This forces us
to have an explicit translation in pipe_to_pan_bind_flags(), which is
probably a good thing anyway.
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Eric R. Smith <eric.smith@collabora.com >
Reviewed-by: Mary Guillemard <mary.guillemard@collabora.com >
Acked-by: Daniel Stone <daniels@collabora.com >
Reviewed-by: Ryan Mckeever <ryan.mckeever@collabora.com >
Reviewed-by: Olivia Lee <olivia.lee@collabora.com >
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com >
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34767 >
2025-05-21 14:55:13 +02:00
Job Noorman
8b2e57aaf6
freedreno/drm-shim: add support for MSM_PARAM_UCHE_TRAP_BASE
...
Just return the default value from tu_drm_get_uche_trap_base.
Signed-off-by: Job Noorman <jnoorman@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35084 >
2025-05-21 11:29:31 +00:00
Samuel Pitoiset
25eb836eec
radv: fix CP DMA with NULL PRT pages on GFX8-9
...
On GFX8-9 (starting from Polaris10), CP DMA is broken with NULL PRT
pages. It doesn't read 0 and doesn't discard writes which can cause
GPU hangs.
Fix that by always using the compute path when a BO is sparse.
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/12828
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35071 >
2025-05-21 09:41:23 +00:00
Samuel Pitoiset
235f70e475
ac/gpu_info: add has_cp_dma_with_null_prt_bug
...
CP DMA is broken on GFX8-9 with NULL PRT pages. The workaround is to
use compute instead.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35071 >
2025-05-21 09:41:23 +00:00
Eric Engestrom
85d2c8f8ae
docs: add sha sum for 25.1.1
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35083 >
2025-05-21 09:34:40 +00:00
Eric Engestrom
58995ad436
docs: add release notes for 25.1.1
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35083 >
2025-05-21 09:34:40 +00:00
Eric Engestrom
1e5a6fa564
docs: update calendar for 25.1.1
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35083 >
2025-05-21 09:34:40 +00:00
Valentine Burley
dc483ea924
ci: Remove firmware from test-base
...
Firmware packages continue to grow in size, so stop installing them in
the test-base image.
The necessary firmware is now collected and uploaded per vendor in an
external repository.
LAVA devices can opt into optional firmware by specifying the name of the
archive via LAVA_FIRMWARE.
For bare-metal, Qualcomm firmware required for DUTs in the Google lab is
included in the baremetal image.
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/13051
Signed-off-by: Valentine Burley <valentine.burley@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34861 >
2025-05-21 08:48:15 +00:00
Valentine Burley
a394b7b64c
amd/ci: Update kernel for Raven
...
This updated kernel allows loading .xz compressed firmware files.
Signed-off-by: Valentine Burley <valentine.burley@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34861 >
2025-05-21 08:48:14 +00:00
Guilherme Gallo
afaa236803
ci/lava: make overlay->compression optional
...
Signed-off-by: Guilherme Gallo <guilherme.gallo@collabora.com >
Signed-off-by: Valentine Burley <valentine.burley@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34861 >
2025-05-21 08:48:14 +00:00
Michel Dänzer
ce268d1a4b
amd/ci: Add cl profile on rusticl in radeonsi-raven-piglit job
...
There's been a number of regressions with rusticl on radeonsi lately,
hopefully this will catch at least some of them.
v2:
* Reference .rusticl-rules. (Valentine Burley)
* Move rusticl fails to their own section at the end of the file.
(LaughingMan)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35066 >
2025-05-21 08:19:19 +00:00
Samuel Pitoiset
6528bb76b1
radv: stop using GDS for emulated prims gen/xfb queries on GFX11-GFX11.5
...
Use the same path as GFX12 using SSBO atomics because performance
should be equal or slightly better due to less synchronization.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35017 >
2025-05-21 08:48:04 +02:00
Samuel Pitoiset
2812efd7ad
radv: declare and emit NGG_QUERY_BUF_VA on GFX11-GFX11.5
...
This user SGPR is used to pass the query buffer VA for emulated queries.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35017 >
2025-05-21 08:46:12 +02:00
Samuel Pitoiset
439baafe5e
radv: increase size of the buffer for emulated queries on GFX12
...
This increases this buffer by 20 bytes but it will be re-used for
emulated queries on GFX11-GFX11.5 in order to remove the GDS path.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35017 >
2025-05-21 08:46:12 +02:00
Samuel Pitoiset
98c1753214
radv: stop reserving NGG streamout counters
...
NGG streamout counters use GDS_OA, not GDS.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35017 >
2025-05-21 08:46:12 +02:00
Samuel Pitoiset
3922cc6fbd
radv: rename a variable in gfx10_copy_shader_query_ace()
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35017 >
2025-05-21 08:46:12 +02:00
Samuel Pitoiset
266c3bdeaf
radv: adjust comments describing GDS needs
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35017 >
2025-05-21 08:46:12 +02:00
Iván Briano
815bcda06d
anv: enable VK_KHR_fragment_shader_barycentric
...
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34445 >
2025-05-20 20:57:59 +00:00
Iván Briano
6268792a29
anv: set HW state for fragment shader barycentric
...
When the FS requires it, set the VertexAttributeBypass and
LegacyBaryAssignmentDisable bits accordingly.
Also program the provoking vertex to give us the per-vertex attributes
in the order the Vulkan specification dictates, and track its dynamic
value for the FS to pick up constant interpolated inputs correctly.
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34445 >
2025-05-20 20:57:59 +00:00
Iván Briano
27a2f6d1ff
brw: add lowering passes for FS barycentric inputs
...
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34445 >
2025-05-20 20:57:59 +00:00
Iván Briano
8ee14e5291
brw/anv: add provoking vertex to fs_msaa_flags
...
This will be necessary to select the right value for flat inputs in
fragment shaders when fragment shader barycentrics are in use.
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34445 >
2025-05-20 20:57:58 +00:00
Iván Briano
acdd30a9da
brw: check if the FS needs vertex_attributes_bypass to be set
...
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34445 >
2025-05-20 20:57:58 +00:00
Iván Briano
c327b83706
brw: implement load_input_vertex intrinsic
...
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34445 >
2025-05-20 20:57:58 +00:00
Iván Briano
4c1f9554f5
intel/genxml: update some instructions for Xe2+
...
3DSTATE_CLIP and 3DSTATE_SF add:
- Triangle Strip Odd Provoking Vertex Select
3DSTATE_RASTER:
- Legacy Bary Assignment Disable
3DSTATE_SBE:
- Vertex Attributes Bypass
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34445 >
2025-05-20 20:57:58 +00:00
Valentine Burley
4696d12f8b
freedreno/ci: Re-enable a618-piglit
...
With the a630's offline, this restorer pre-merge piglit coverage.
Signed-off-by: Valentine Burley <valentine.burley@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35018 >
2025-05-20 20:36:33 +00:00
Valentine Burley
09e713f46b
freedreno/ci: Update piglit expectations on a618
...
Fixes: 65e18a8494 ("freedreno: Fix shader-clock when kernel exposes UCHE_TRAP_BASE")
Signed-off-by: Valentine Burley <valentine.burley@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35018 >
2025-05-20 20:36:33 +00:00
Valentine Burley
2815e803ae
freedreno/ci: Disable all a630 jobs
...
The cheza DUTs are retired and no longer active.
The pre-merge jobs have already been disabled, do the same for the
nightly ones as well.
Signed-off-by: Valentine Burley <valentine.burley@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35018 >
2025-05-20 20:36:33 +00:00
Konstantin Seurer
f4a233a34e
llvmpipe: Reduce the size of lp_descriptor
...
Now that the descriptor does not have to store the texeture layout, the
size can be reduced (to 64 bytes).
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35043 >
2025-05-20 20:10:16 +00:00
Konstantin Seurer
8d11da0c10
llvmpipe: Make more texture state static with bindless
...
Because almost everything is compiled on demand, this can be done
without blowing up the compiled sample function count. Making this
static improves performance by a bit and will make it possible to reduce
the descriptor size.
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35043 >
2025-05-20 20:10:16 +00:00
Konstantin Seurer
ab35233f79
llvmpipe: Compile size query functions on demand
...
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35043 >
2025-05-20 20:10:16 +00:00
Konstantin Seurer
7e9182e6ee
llvmpipe: Compile fewer unnecessary functions
...
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35043 >
2025-05-20 20:10:16 +00:00
Konstantin Seurer
d30593ae3d
llvmpipe: Compile texture fetch functions on demand
...
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35043 >
2025-05-20 20:10:16 +00:00
Mike Blumenkrantz
427678c025
egl: handle DRI_PRIME with surfaceless
...
this is mostly a direct port of the wayland handling
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/3987
Tested-by: Pekka Paalanen <pekka.paalanen@collabora.com >
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Acked-by: Daniel Stone <daniels@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34610 >
2025-05-20 19:42:57 +00:00
Gurchetan Singh
c7c72d1d68
gfxstream: add VulkanMapper
...
This adds logic for a singleton VulkanMapper to be used with
Kumquat. The main goal is remove the Vulkano dependency on
virtgpu_kumquat, so it's more portable.
Reviewed-by: Marcin Radomski <dextero@google.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34884 >
2025-05-20 19:16:27 +00:00
Eric Engestrom
b03d5ecad3
ci: uprev vkd3d
...
https://github.com/HansKristian-Work/vkd3d-proton/compare/7eef0a64e3fc107a6cb10e3abd1b56d21b575de8...7e829e88364f9429596b14d0c0ea0205e1337edc
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35074 >
2025-05-20 18:40:28 +00:00
Aditya Swarup
ac863b8b15
iris: Disable fast clear when surface width is 16k
...
HSD 16023071695 description mentions we need to extend
WA_16021232440 to cover the case when surface width is 16k.
BSpec: 57340
Signed-off-by: Aditya Swarup <aditya.swarup@intel.com >
Reviewed-by: Tapani Pälli <tapani.palli@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34838 >
2025-05-20 10:44:52 -07:00
Aditya Swarup
6528d267ef
anv: Disable fast clear when surface width is 16k
...
HSD 16023071695 description mentions we need to extend
WA_16021232440 to cover the case when surface width is 16k.
BSpec: 57340
Signed-off-by: Aditya Swarup <aditya.swarup@intel.com >
Reviewed-by: Tapani Pälli <tapani.palli@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34838 >
2025-05-20 10:44:52 -07:00
Konstantin Seurer
8edee1e25b
lavapipe: Fail device enumeration when DRAW_USE_LLVM=0 is set
...
DRAW_USE_LLVM=0 is not supported and crashes.
Acked-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35036 >
2025-05-20 16:54:19 +00:00
Rhys Perry
072e6d1ab5
aco/tests: add tests for tied definitions
...
Some of these would have failed before the rewrite.
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34700 >
2025-05-20 15:40:47 +00:00
Rhys Perry
b341a12526
aco/ra: rewrite handling of tied definitions
...
The old version worked by precoloring both the operand and definition to
whatever register the operand was at the time. This didn't allow moving
the operand/definition after precoloring them, or two tied operands with
the same temporary.
The new version works by temporarily making the operands late kill and
creating a copy if the temporary is live-through or used as another tied
operand. Then we can simply later make the operands early kill again and
assign the definitions to the operand's register.
This way, we can move the operand to make space and the new location will
not intersect with any other definition and won't cause the operand and
definition registers to mismatch.
fossil-db (gfx1201):
Totals from 2253 (2.84% of 79377) affected shaders:
Instrs: 1634747 -> 1630799 (-0.24%); split: -0.27%, +0.03%
CodeSize: 8688148 -> 8672348 (-0.18%); split: -0.20%, +0.02%
VGPRs: 106500 -> 106512 (+0.01%)
Latency: 11385480 -> 11382965 (-0.02%); split: -0.04%, +0.01%
InvThroughput: 1754430 -> 1754326 (-0.01%); split: -0.01%, +0.00%
SClause: 38954 -> 38964 (+0.03%); split: -0.01%, +0.04%
Copies: 110772 -> 110800 (+0.03%); split: -0.02%, +0.04%
Branches: 29093 -> 29092 (-0.00%)
VALU: 902011 -> 902008 (-0.00%)
SALU: 260175 -> 260203 (+0.01%); split: -0.01%, +0.02%
fossil-db (navi31):
Totals from 2 (0.00% of 79377) affected shaders:
Latency: 1766 -> 1765 (-0.06%)
InvThroughput: 3219 -> 3215 (-0.12%)
fossil-db (navi21):
Totals from 14 (0.02% of 79377) affected shaders:
(no affected stats)
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34700 >
2025-05-20 15:40:47 +00:00
Rhys Perry
cdf3767001
aco: set copy-kill for tied operands with the same temporary
...
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34700 >
2025-05-20 15:40:47 +00:00
Rhys Perry
f783f5df6d
aco/ra: move optimize_encoding earlier
...
We have to handle tied definitions after optimize_encoding, but a rewrite
of that will need the register file from before clearing the killed
operands.
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34700 >
2025-05-20 15:40:47 +00:00