Rhys Perry
b7725b072b
aco: flush denormals for 16-bit fmin/fmax on GFX8
...
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26445 >
2023-12-05 16:56:57 +00:00
Yonggang Luo
a9a2eabea8
glsl: move glsl_get_gl_type into glsl/linker_util.h
...
glsl_get_gl_type only accessed in src/compiler/glsl files, do not expose it
in libcompiler
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com >
Reviewed-by: Caio Oliveira <caio.oliveira@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25879 >
2023-12-05 16:16:55 +00:00
Boris Brezillon
1d4583759a
panfrost: Restrict job descriptor emission to JM hardware
...
CSF hardware issue jobs through command stream instructions.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26356 >
2023-12-05 15:55:21 +00:00
Boris Brezillon
54e0086abe
panfrost: Restrict job chain helpers to JM hardware
...
Jobs are issued through command stream instructions on CSF hardware.
Don't expose the job chain helpers in that case.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26356 >
2023-12-05 15:55:21 +00:00
Boris Brezillon
1481883a6e
panfrost: Make pan_afbc_compression_mode() per-gen
...
With the introduction of v10, we need this function to have a
per-gen name to avoid duplicates. While at it, move it to pan_texture.c
since the prototype is already defined in pan_texture.h.
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26356 >
2023-12-05 15:55:21 +00:00
Boris Brezillon
e144347140
panfrost: Rename pan_cs.{c,h} into pan_desc.{c,h}
...
Pre v10 Mali GPU were describing GPU jobs as a chain of job descriptors,
but new generations moved to a command stream based approach. The
pan_cs.{h,c} name was chosen based on the assumption this job chain
would replace the command stream we have on other GPUs, things will
become a lot more confusing now that we have a real command stream.
Let's rename these files before it happens. Given all the helpers in
there are either emitting descriptors, and calculating values to be
put in such descriptors, pan_desc.{c,h} sounds like an acceptable
name.
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26356 >
2023-12-05 15:55:21 +00:00
Boris Brezillon
dc087a3184
panfrost: s/pan_scoreboard/pan_jc/
...
What pan_scoreboard manipulates is a job chain, how dependencies
between jobs is implemented is an implementation detail, and shouldn't
leak through the name.
Let's rename pan_scoreboard.h pan_jc.h, and prefix the functions
accordingly.
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26356 >
2023-12-05 15:55:21 +00:00
Boris Brezillon
692a4b1804
panfrost: Don't leak NIR compute shaders
...
We never steal the NIR program or free it explicitly, and the state
tracker expects drivers to take ownership of the program object. Since
panfrost doesn't need to keep the original NIR shader around for
compute, let's just free it before returning.
Fixes: 40372bd720 ("panfrost: Implement a disk cache")
Cc: stable
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26424 >
2023-12-05 15:29:28 +00:00
Karol Herbst
b470bd7359
rusticl/gl: make GLX support optional
...
Signed-off-by: Karol Herbst <kherbst@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26394 >
2023-12-05 14:44:52 +00:00
Karol Herbst
494fd5d068
rusticl: add x11 dependency
...
This is needed by `glx.h` pulling in `X11/Xlib.h`
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/10221
Fixes: df0623e51a ("rusticl, meson: Add gl/egl/glx bindings")
Signed-off-by: Karol Herbst <kherbst@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26394 >
2023-12-05 14:44:52 +00:00
Samuel Pitoiset
338319741c
radv: add DGC support for mesh shader only
...
This only implements mesh shaders with DGC because task shaders are
really tricky. I will address them later.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25890 >
2023-12-05 14:17:39 +00:00
Samuel Pitoiset
eb3e1bdfe6
radv: only initialize the VTX base SGPR if non-zero with DGC
...
Otherwise, its value is incorrect.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25890 >
2023-12-05 14:17:39 +00:00
Samuel Pitoiset
1deedc70db
radv: only initialize the VBO reg if VBOs are bound with DGC
...
With mesh shader there is no VBO at all.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25890 >
2023-12-05 14:17:39 +00:00
Samuel Pitoiset
400cfa0eba
radv: remove never used binds_state for DGC
...
This has been removed a while ago.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25890 >
2023-12-05 14:17:39 +00:00
Mario Kleiner
1700c6af6f
v3d: add B10G10R10[X2/A2]_UNORM to format table.
...
Enables 10 bpc / color depth 30 bit support under XOrg
with X11/GLX/OpenGL.
Successfully tested with RaspberryPi OS 11,
running X-Server 1.20, and also with Weston,
on a RaspberryPi 400 on top of current Mesa 24.0-devel.
Alejandro Piñeiro also performed a GLES CTS run
with successful result, citing him:
"Full GLES 31 CTS finished with 0 failres. So all ok"
Note that this commit was originally developed and
successfully tested by myself against Mesa 23.1-devel
from February 2023, and therefore should apply and work
cleanly against recent Mesa stable branches. One could
see this commit as a trivial compatibility fix against
X-Server 1.20 / modesetting-ddx 1.20, which is why I'm
also nominating this commit for the current 23.3 stable
branch, and also the 23.2 stable branch, so it may make
it into RaspberryPi OS 12. Thanks for the consideration.
Signed-off-by: Mario Kleiner <mario.kleiner.de@gmail.com >
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com >
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com >
Backport-to: 23.2
Backport-to: 23.3
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26472 >
2023-12-05 13:56:23 +00:00
Eric Engestrom
48324e3734
radeonsi/ci: update vangogh piglit expectations
...
Looking good there, Vangogh!
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26466 >
2023-12-05 13:34:32 +00:00
Martin Roukala (né Peres)
91076fd390
amd/ci: reduce Renoir's concurrency to 16
...
It seems like when we increased the number of tests per shard, we
started overcommitting the Renoir runner, leading to load averages
higher than the 16 CPU threads could handle, while also running at
75-96% memory usage.
By dropping the concurrency to 16, we should be able to reduce this
memory usage while also reducing the execution time.
Signed-off-by: Martin Roukala (né Peres) <martin.roukala@mupuf.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26501 >
2023-12-05 12:45:44 +00:00
Caio Oliveira
d9565a0e66
intel/compiler: Remove the linking step in intel_clc
...
A previous patch already removed individual compilation of the inputs,
by simply concatenating the files. This patch removes the linking of
the remaining single object that's compiled.
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26458 >
2023-12-05 11:48:25 +00:00
Caio Oliveira
d9e49ce194
intel/compiler: Fix memory leaks in intel_clc
...
Avoids failures when using Address Sanitizer.
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26458 >
2023-12-05 11:48:25 +00:00
Caio Oliveira
db9111bb87
intel/compiler: Use single variable instead of dynarray
...
A previous change concatenated multiple SPIR-V inputs to be
compiled together, so we have a single clc_binary to work on.
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26458 >
2023-12-05 11:48:25 +00:00
Caio Oliveira
73276c1ece
intel/compiler: Refactor program exit in intel_clc
...
Move the clean up code (at the moment just ralloc_ctx) into
a single place at the end.
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26458 >
2023-12-05 11:48:25 +00:00
Faith Ekstrand
1d10de539c
nvk: Implement VK_EXT_shader_image_atomic_int64
...
The compiler work is done but we still need to advertise formats and
deal with clears.
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/9647
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26246 >
2023-12-05 11:24:51 +00:00
Faith Ekstrand
0ad77cbf98
nvk: Don't disable non-texturable formats
...
We're about to add int64 formats and those aren't texturable but you can
use them as storage images.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26246 >
2023-12-05 11:24:51 +00:00
Faith Ekstrand
7f1dc665ef
nil: Add R64_SINT and R64_UINT formats
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26246 >
2023-12-05 11:24:51 +00:00
Faith Ekstrand
c190c54c30
nak: Handle 64-bit image atomics
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26246 >
2023-12-05 11:24:51 +00:00
Faith Ekstrand
62ff051139
nak: Lower 64-bit image load/store
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26246 >
2023-12-05 11:24:51 +00:00
Faith Ekstrand
1e2f9ab771
nak/nir: Trim image load/stores based on format
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26246 >
2023-12-05 11:24:51 +00:00
Faith Ekstrand
9b60a1c00e
nvk: Advertise VK_KHR_shader_atomic_int64
...
Everything should be mostly wired up. Shared atomics don't seem to work,
though, for some reason.
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/9603
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26246 >
2023-12-05 11:24:51 +00:00
Faith Ekstrand
c05ad7904f
nvk: Advertise KHR_shader_subgroup_extended_types
...
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/9607
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26246 >
2023-12-05 11:24:51 +00:00
Faith Ekstrand
a975c51d5b
nak/nir: Handle non-32-bit data in lower_scan_reduce
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26246 >
2023-12-05 11:24:51 +00:00
Faith Ekstrand
2655607983
nvk: Advertise VK_EXT_shader_subgroup_ballot/vote
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26246 >
2023-12-05 11:24:51 +00:00
Faith Ekstrand
3bded00831
nvk: Advertise shaderInt64
...
We enable the lowering so everything should work. If there's bugs,
we'll fix them. There's more work to do to implement it efficiently, of
course, but it should work.
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/9662
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26246 >
2023-12-05 11:24:51 +00:00
Faith Ekstrand
56a6486599
nak/nir: Don't lower 64-bit conversions
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26246 >
2023-12-05 11:24:51 +00:00
Faith Ekstrand
39db9cf0a7
nak: Implement b2i64
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26246 >
2023-12-05 11:24:51 +00:00
Faith Ekstrand
943eae018b
nak: Fix encoding of 64-bit F2I, I2F, and F2F
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26246 >
2023-12-05 11:24:51 +00:00
Faith Ekstrand
16e55dc7d5
nak: Use the right source types for I2F, F2I, and F2F
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26246 >
2023-12-05 11:24:51 +00:00
Faith Ekstrand
d621f2ccfd
nak: Don't ask NIR to lower [iu]mul64_2x32
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26246 >
2023-12-05 11:24:51 +00:00
Faith Ekstrand
d2cec80768
nak: Implement 64-bit comparisons
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26246 >
2023-12-05 11:24:51 +00:00
Faith Ekstrand
8747a25d65
nak: Rework printing of comparisons
...
As with the memory modifiers, put the . on the modifier rather than
having to do it as part of the print itself. Also, add printing of
accumulators but only if it's not a trivial accumulation.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26246 >
2023-12-05 11:24:51 +00:00
Faith Ekstrand
9c1eade3eb
nak: Lower isign in NIR
...
The NIR lowering just clamps to [-1, 1] which should turn into two IMnMx
as opposed to the 4 instructions we're emitting now. We can maybe do
better than the NIR lowering for 64-bit but that seems unnecessary.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26246 >
2023-12-05 11:24:51 +00:00
Faith Ekstrand
12acb2ef62
nak: Natively implement 64-bit shifts
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26246 >
2023-12-05 11:24:51 +00:00
Faith Ekstrand
a52e46406b
nak: Implement 64-bit ineg
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26246 >
2023-12-05 11:24:51 +00:00
Faith Ekstrand
7db3cc7502
nak/nir: Don't use nir_lower_bit_size on 64-bit values
...
It works by casting values to a larger type and doing the operation
there so it makes no sense to use it for 64-bit values.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26246 >
2023-12-05 11:24:50 +00:00
Faith Ekstrand
af94989085
nak: Set .64/.32 on CSSR as needed
...
Fixes: 46d489fa4d ("nak: Implement shader clock")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26246 >
2023-12-05 11:24:50 +00:00
Faith Ekstrand
ee386c0c58
nak: Fix integer roll-over when we have a u64vec4
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26246 >
2023-12-05 11:24:50 +00:00
Faith Ekstrand
add1119671
nak: Run rustfmt again
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26246 >
2023-12-05 11:24:50 +00:00
Yonggang Luo
83a5fb9faf
util: Fixes note: the alignment of ‘_Atomic long long int’ fields changed in GCC 11.
...
This is a improve of https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22121
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com >
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23961 >
2023-12-05 09:26:08 +00:00
Eric Engestrom
81ec1fa0b5
nvk: use || instead of | between bools
...
We have to split each call into its own variable, because simply
replacing `|` with `||` would short-circuit the right side when the left
side succeeds.
Fixes: dadf9d59e6 ("nvk: Add support for variable pointers")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26509 >
2023-12-05 08:07:48 +00:00
Eric Engestrom
3115e6e211
amd/ci: reuse .radeonsi-rules in .radeonsi-vaapi-rules
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26480 >
2023-12-05 06:55:21 +00:00
Lionel Landwerlin
344a4948b7
intel/hang_replay: fix compile race with generated files
...
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Fixes: 03712579b0 ("intel/tools: add hang_replay tool")
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26510 >
2023-12-05 06:09:52 +00:00