Commit graph

218985 commits

Author SHA1 Message Date
Faith Ekstrand
85e312cffa pan/desc: Set Z/S MSAA averaging mode in common code
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Acked-by: Boris Brezillon <boris.brezillon@collabora.com>
Acked-by: Eric R. Smith <eric.smith@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39759>
2026-02-23 21:00:15 +00:00
Faith Ekstrand
cb2651fead pan/desc: Drop cbuf_offset from emit_*_color_attachment()
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Acked-by: Boris Brezillon <boris.brezillon@collabora.com>
Acked-by: Eric R. Smith <eric.smith@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39759>
2026-02-23 21:00:14 +00:00
Faith Ekstrand
13448fd3aa pan/desc: Pass image views directly to attachment helpers
Now that we're doing a merge to fill out the various enable bits, we
don't actually need the pan_fb_info in the attachment helpers.

Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Acked-by: Boris Brezillon <boris.brezillon@collabora.com>
Acked-by: Eric R. Smith <eric.smith@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39759>
2026-02-23 21:00:14 +00:00
Faith Ekstrand
7d12f11c84 panvk: Use partial FB preloads to deal with alignments
Previously, when we had an unaligned render area, we would flush to
force a full FB load and then clear the render area manually after
loading.  This means we're doing a full FB load and then throwing most
of that data away.

The new FB load shaders, however, are capable of doing partial loads,
with the inside of the render area loaded or cleared as we wish and the
border pixels loaded.  This way we can handle partial clears directly in
the load shaders instead of having to do this dance.  This should
improve perf whenever a non-trivial render area is used.

Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Acked-by: Boris Brezillon <boris.brezillon@collabora.com>
Acked-by: Eric R. Smith <eric.smith@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39759>
2026-02-23 21:00:14 +00:00
Faith Ekstrand
44ff0c4707 panvk: Also load output attachments with LOAD_OP_NONE+STORE_OP_NONE
We already had this for LOAD_OP_DONT_CARE but we also need it for
LOAD_OP_NONE.

Cc: mesa-stable
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Acked-by: Boris Brezillon <boris.brezillon@collabora.com>
Acked-by: Eric R. Smith <eric.smith@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39759>
2026-02-23 21:00:13 +00:00
Faith Ekstrand
b0b6ca0035 panvk: Insert a pipeline barrier if we have any FB loads
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Acked-by: Boris Brezillon <boris.brezillon@collabora.com>
Acked-by: Eric R. Smith <eric.smith@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39759>
2026-02-23 21:00:13 +00:00
Faith Ekstrand
e2e1c3b8b7 panvk/jm: Rework load/store/spill
The current code looks a lot like how you might do this in GL.  We start
off with the load, which might be loads or clears.  Then, after the
first flush, we replace that with the spill load.  This doesn't really
fit the load/spill/store that the new pan_fb code wants.

Instead, this commit add a couple of separate tracker bits to keep track
of whether or not we've loaded yet and whether or not we're in the final
EndRendering and want to do the "real" store.  This allows us to track
where we are in the render pass and do the right load/spill/store
operations.

Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Acked-by: Boris Brezillon <boris.brezillon@collabora.com>
Acked-by: Eric R. Smith <eric.smith@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39759>
2026-02-23 21:00:13 +00:00
Faith Ekstrand
962d1f33e1 panvk/jm: Refactor BeginRendering()
The old code was all out of order and made no sense.  There's a reason
it made no sense. It was wrong.  Cleaning this up fixes a solid 1/3 of
the remaining Bifrost CTS fails in CI.

Cc: mesa-stable
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Acked-by: Boris Brezillon <boris.brezillon@collabora.com>
Acked-by: Eric R. Smith <eric.smith@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39759>
2026-02-23 21:00:13 +00:00
Faith Ekstrand
df98b6e3b2 panvk: Drop pan_fb_info
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Acked-by: Boris Brezillon <boris.brezillon@collabora.com>
Acked-by: Eric R. Smith <eric.smith@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39759>
2026-02-23 21:00:12 +00:00
Faith Ekstrand
779d88dc54 panvk: Use pan_fb_load to decide when we have a clear
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Acked-by: Boris Brezillon <boris.brezillon@collabora.com>
Acked-by: Eric R. Smith <eric.smith@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39759>
2026-02-23 21:00:12 +00:00
Faith Ekstrand
cf72237e40 panvk/trace: Trace using pan_fb_layout instead of info
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Acked-by: Boris Brezillon <boris.brezillon@collabora.com>
Acked-by: Eric R. Smith <eric.smith@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39759>
2026-02-23 21:00:11 +00:00
Faith Ekstrand
134681381c panvk/preload: Populate our own texture descriptors
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Acked-by: Boris Brezillon <boris.brezillon@collabora.com>
Acked-by: Eric R. Smith <eric.smith@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39759>
2026-02-23 21:00:11 +00:00
Faith Ekstrand
eb088db6ea panvk: Switch to the new preload shader framework
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Acked-by: Boris Brezillon <boris.brezillon@collabora.com>
Acked-by: Eric R. Smith <eric.smith@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39759>
2026-02-23 21:00:11 +00:00
Faith Ekstrand
3bb7d929f4 panvk/preload: Stop assuming 32 registers
cc: mesa-stable

Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Acked-by: Boris Brezillon <boris.brezillon@collabora.com>
Acked-by: Eric R. Smith <eric.smith@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39759>
2026-02-23 21:00:11 +00:00
Faith Ekstrand
19ad26a8de panvk: Create both Z/S descriptors, even for separate Z/S
The Vulkan spec says that aspects are ignored for Z/S attachments so we
shouldn't consider that as a factor when deciding whether or not to
create other aspect descriptors.  This will be irrelevant in a couple of
commits but we need it for the backport anyway.

Cc: mesa-stable
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Acked-by: Boris Brezillon <boris.brezillon@collabora.com>
Acked-by: Eric R. Smith <eric.smith@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39759>
2026-02-23 21:00:11 +00:00
Faith Ekstrand
3fe56db780 panvk/jm: Use the new pan_fb code for emitting fragment jobs
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Acked-by: Boris Brezillon <boris.brezillon@collabora.com>
Acked-by: Eric R. Smith <eric.smith@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39759>
2026-02-23 21:00:10 +00:00
Faith Ekstrand
071838e634 panvk/jm: Re-generate FB info in cmd_preload_fb_after_batch_split()
Instead of smashing the pan_fb_info, use the spill pan_fb_load to
re-generate it from scratch.  This should make basically the same change
to the pan_fb_info that we made before, just using the decisions made at
CmdBeginRendering() time as a guide.

Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Acked-by: Boris Brezillon <boris.brezillon@collabora.com>
Acked-by: Eric R. Smith <eric.smith@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39759>
2026-02-23 21:00:10 +00:00
Faith Ekstrand
0f290cd0d6 panvk/csf: Use the new pan_fb code for emitting FBDs
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Acked-by: Boris Brezillon <boris.brezillon@collabora.com>
Acked-by: Eric R. Smith <eric.smith@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39759>
2026-02-23 21:00:09 +00:00
Faith Ekstrand
dca1c1b5b4 panvk: Add a version of fb_preload which takes the new structs
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Acked-by: Boris Brezillon <boris.brezillon@collabora.com>
Acked-by: Eric R. Smith <eric.smith@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39759>
2026-02-23 21:00:09 +00:00
Faith Ekstrand
951cce705c panvk/csf: Use the new structs in prepare_incremental_rendering_fbinfos()
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Acked-by: Boris Brezillon <boris.brezillon@collabora.com>
Acked-by: Eric R. Smith <eric.smith@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39759>
2026-02-23 21:00:08 +00:00
Faith Ekstrand
bff0cb1ee2 panvk: Use the new structs to re-populate fbinfo in force_fb_preload()
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Acked-by: Boris Brezillon <boris.brezillon@collabora.com>
Acked-by: Eric R. Smith <eric.smith@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39759>
2026-02-23 21:00:08 +00:00
Faith Ekstrand
c6ebf3cc59 panvk: Use the new FB code for tile size selection
The only functional change is that the new code doesn't reserve space
for dummy allocations.  However, the old code never actually took dummy
allocations into account when placing RTs so they end up overlapping
anyway and it's not causing problems.  Also, we set rt_count when there
are no attachments and that doesn't reserve dummy space so clearly
running with zero attachments is fine.

Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Acked-by: Boris Brezillon <boris.brezillon@collabora.com>
Acked-by: Eric R. Smith <eric.smith@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39759>
2026-02-23 21:00:08 +00:00
Faith Ekstrand
225135ed10 panvk: Use thew new pan_fb_layout for setting up attachments
For now, both exist simultaneously and we'll try to keep them in sync.
Eventually, everything will be converted to the new structs and we'll
drop the old.

Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Acked-by: Boris Brezillon <boris.brezillon@collabora.com>
Acked-by: Eric R. Smith <eric.smith@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39759>
2026-02-23 21:00:07 +00:00
Faith Ekstrand
d2f21f65c6 pan/desc: Set clean_tile.write_zs for interleaved Z/S stencil clears
Fixes: 9fc555db03 ("pan/desc: Cache clean tile state")
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Acked-by: Boris Brezillon <boris.brezillon@collabora.com>
Acked-by: Eric R. Smith <eric.smith@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39759>
2026-02-23 21:00:07 +00:00
Faith Ekstrand
7bf9e203f2 panvk: Refactor resolveMode handling
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Acked-by: Boris Brezillon <boris.brezillon@collabora.com>
Acked-by: Eric R. Smith <eric.smith@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39759>
2026-02-23 21:00:07 +00:00
Faith Ekstrand
a59bf9c0f2 util/format: Place PAN_FORMAT_FOO_START after the first format
Without this, GDB will say PIPE_FORMAT_ZS_START instead of
PIPE_FORMAT_S8_UINT.  This makes pipe_format more debuggable.

Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Acked-by: Boris Brezillon <boris.brezillon@collabora.com>
Acked-by: Eric R. Smith <eric.smith@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39759>
2026-02-23 21:00:07 +00:00
Faith Ekstrand
3cb4d4787c panvk/jm: Emit FRAGMENT_JOB ourselves
The helper isn't really helping us that much here and we already do our
own thing in the CSF code so we might as well here.

Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Acked-by: Boris Brezillon <boris.brezillon@collabora.com>
Acked-by: Eric R. Smith <eric.smith@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39759>
2026-02-23 21:00:07 +00:00
Faith Ekstrand
7eb1f715ac panvk: Drop all the crc_valid stuff
We don't support CRC in Vulkan right now and this stuff isn't that
useful anyway since we can't do CRC state tracking on the CPU in Vulkan.

Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Acked-by: Boris Brezillon <boris.brezillon@collabora.com>
Acked-by: Eric R. Smith <eric.smith@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39759>
2026-02-23 21:00:07 +00:00
Faith Ekstrand
29c05a7de3 panvk: Memset fb state to zero
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Acked-by: Boris Brezillon <boris.brezillon@collabora.com>
Acked-by: Eric R. Smith <eric.smith@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39759>
2026-02-23 21:00:06 +00:00
Faith Ekstrand
79164757ed panvk: Stop doing the pre/post DCD offsetting in common code
This may have been the easy choice at the time but it leaves us with a
nasty bit of ABI between the framebuffer code and the Vulkan driver.
Instead, do the array calculation in the Vulkan driver.

Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Acked-by: Boris Brezillon <boris.brezillon@collabora.com>
Acked-by: Eric R. Smith <eric.smith@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39759>
2026-02-23 21:00:06 +00:00
Faith Ekstrand
2774dc1fc2 panvk: Return frame shader DCDs and modes from cmd_fb_preload()
Having this be stateful is hard to follow.  Especially since, in the
previous incarnation, if it's called twice without resetting the dcd
pointer, it'll happily write new DCDs to the old pointer.  In the new
version, it's explicit when we build new frame shader DCDs.

Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Acked-by: Boris Brezillon <boris.brezillon@collabora.com>
Acked-by: Eric R. Smith <eric.smith@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39759>
2026-02-23 21:00:06 +00:00
Faith Ekstrand
05062a45ed panvk: Add and use a new pan_ptr_offset() helper
In cases where we have to do the same offset calculation on both the CPU
and GPU halves of a pointer, this lets us do it once and avoid things
getting out-of-sync.

Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Acked-by: Boris Brezillon <boris.brezillon@collabora.com>
Acked-by: Eric R. Smith <eric.smith@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39759>
2026-02-23 21:00:04 +00:00
Faith Ekstrand
ef952706e8 panvk/csf: Use a panvk_rendering_state temp variable
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Acked-by: Boris Brezillon <boris.brezillon@collabora.com>
Acked-by: Eric R. Smith <eric.smith@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39759>
2026-02-23 21:00:04 +00:00
Faith Ekstrand
5fc91b38c8 pan/fb: Add a mapping to the old FB info
This adds a helper for filling out framebuffer descriptors as well as
one for mapping to pan_fb_info.

Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Acked-by: Boris Brezillon <boris.brezillon@collabora.com>
Acked-by: Eric R. Smith <eric.smith@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39759>
2026-02-23 21:00:01 +00:00
Faith Ekstrand
e3dc3dccd6 pan/fb: Add a common FB load shader builder
One of the advantages to this new FB load shader, apart from it being
common, is that it's able to properly handle partial tile loads.
Instead of doing the force_preload/clear dance that PanVK is currently
doing, these shaders are clever enough to detect whether or not they're
inside the Vulkan render area and clear the inside while loading the
border pixels.

In order for this to work, there are two new intrinsics which provide
the framebuffer bounding box and the clear values.  We need this in
order to handle partial loads correctly.

Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Acked-by: Boris Brezillon <boris.brezillon@collabora.com>
Acked-by: Eric R. Smith <eric.smith@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39759>
2026-02-23 21:00:01 +00:00
Faith Ekstrand
88ad8bc75d nir/gather_info: Add support for panfrost tile load/store intrinsics
Fixes: 6fc1030e4f ("nir: Add some new panfrost fragment shader intrinsics")
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Acked-by: Boris Brezillon <boris.brezillon@collabora.com>
Acked-by: Eric R. Smith <eric.smith@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39759>
2026-02-23 21:00:01 +00:00
Faith Ekstrand
ae901f6175 nir/print: Add panfrost blend intrinsics
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Acked-by: Boris Brezillon <boris.brezillon@collabora.com>
Acked-by: Eric R. Smith <eric.smith@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39759>
2026-02-23 21:00:01 +00:00
Faith Ekstrand
f45ea1b66a pan: Add a new framebuffer abstraction
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Acked-by: Boris Brezillon <boris.brezillon@collabora.com>
Acked-by: Eric R. Smith <eric.smith@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39759>
2026-02-23 21:00:01 +00:00
Faith Ekstrand
4d8551552e pan/clear: Stop packing undefined bits in colors
The util code doesn't actually fill things with zeros so the high bits
are undefined.  If we really want things replicated, we need to mask off
just the bits we care about.

Cc: mesa-stable
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Acked-by: Boris Brezillon <boris.brezillon@collabora.com>
Acked-by: Eric R. Smith <eric.smith@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39759>
2026-02-23 21:00:01 +00:00
Alyssa Rosenzweig
39bbfd7c51 asahi: fix some copyright headers
this came up earlier this week.

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenz.ca>
Acked-by: Mary Guillemard <mary@mary.zone>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40031>
2026-02-23 20:04:12 +00:00
Alyssa Rosenzweig
5a4bda0216 panfrost: drop email from ancient copyright lines
I am not aware of any legal reason why this should be there and I haven't done
it on any new code in ages. Drop it rather than updating the emails. I am quite
sure people know how to reach me in any case.

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenz.ca>
Acked-by: Mary Guillemard <mary@mary.zone>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40031>
2026-02-23 20:04:12 +00:00
Alyssa Rosenzweig
8c90bc028d mailmap: update my personal email
The future of .io domains is... uncertain. New TLD, same me.

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenz.ca>
Acked-by: Mary Guillemard <mary@mary.zone>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40031>
2026-02-23 20:04:12 +00:00
Emma Anholt
e6ec3244c4 ir3/ra: Assert that our calculated pressures aren't bigger than the reg file.
If you were to try to reg allocate to more full regs than the file has,
you'll end up bit clearing off of available[]/available_to_evict[] and
corrupting the RB tree.  Let's make sure we don't land there again.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39997>
2026-02-23 19:25:27 +00:00
Emma Anholt
0c6da326f8 ir3/ra: Fix DOUBLE_ONLY limit pressure computation.
As the comment says, we want to limit our pressure based on underlying HW
reg file size, not max it out to HW reg file size.  This caused us to not
spill when we should when the HW reg size was bigger than the ISA reg file
size, leading to OOB writes in RA when it tried to allocate to the limit
pressure we spilled to.

Fixes segfaults in llama.cpp's test-backend-ops.

Fixes: e6e34883a9 ("ir3: Add wavesize control")
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/14846
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39997>
2026-02-23 19:25:27 +00:00
Emma Anholt
8c30d48610 ir3/ra: Clean up the ra_ctx_dump() output a bit.
Having the associated lines all show what file they're about helps
navigate the dump when you first turn it on again, having paged out most
of your memory of RA.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39997>
2026-02-23 19:25:26 +00:00
Alyssa Rosenzweig
bac43d28a9 agx: use util_is_probably_float
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
To demonstrate that this helper is legitimately useful cross-tree and should
be made common code :-)

Sample AGX IR with this patch:

   10 = mov_imm #0x3f5680f1 /* 0.837905 */

Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@intel.com>
Reviewed-by: Mary Guillemard <mary@mary.zone>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40021>
2026-02-23 18:23:41 +00:00
Alyssa Rosenzweig
da4296c27c util,intel: move probably_float to common code
This helper is generally useful when trying to prettyprint a 32-bit value, so
make it available to the rest of the tree.

Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@intel.com>
Reviewed-by: Mary Guillemard <mary@mary.zone>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40021>
2026-02-23 18:23:41 +00:00
José Roberto de Souza
48c685ee39 intel/perf: Add HSW verx10 to intel_perf_query_result_write_mdapi()
HSW is verx10 75 and when we switched from ver to verx10 I forgot to add the case
75.

Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Fixes: a097a3d214 ("intel/perf: Change mdapi switch cases from ver to verx")
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/14902
Signed-off-by: José Roberto de Souza <jose.souza@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40039>
2026-02-23 18:00:52 +00:00
Jason Macnak
5dd52846ec gfxstream: enable VK_EXT_primitives_generated_query
... as this is a needed extension for ANGLE To enable GLES 3.2.

Test: cvd create --gpu_mode=gfxstream_guest_angle on Nvidia

Reviewed-by: Aaron Ruby <aruby@qnx.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40045>
2026-02-23 17:41:30 +00:00
Gurchetan Singh
6c66b30add virtio/kumquat: add safety comments
This is to help enable to clippy safety lint tree-wide.

Reviewed-by: Aaron Ruby <aruby@qnx.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39222>
2026-02-23 17:20:10 +00:00