Daniel Schürmann
175c06e5cd
intel: switch to nir_metadata_divergence
...
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30814 >
2025-02-13 10:08:43 +00:00
Daniel Schürmann
067478358f
amd: switch to nir_metadata_divergence
...
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30814 >
2025-02-13 10:08:43 +00:00
Daniel Schürmann
86fd673ade
nir: require nir_metadata_divergence if needed
...
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30814 >
2025-02-13 10:08:43 +00:00
Daniel Schürmann
01f2d494d0
nir: make divergence information metadata
...
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30814 >
2025-02-13 10:08:43 +00:00
Rhys Perry
de4320d45d
radeonsi: fix invalidation of metadata in si_nir_lower_abi
...
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/30814 >
2025-02-13 10:08:43 +00:00
Christian Gmeiner
e1cc8ffd5f
etnaviv: isa: Add swizzle instruction
...
Based on observations of the generated assembly, this instruction appears to:
- Swizzle the 8/16 component vector in src0 according to the pattern defined in src1.
- Apply a enable mask from src2 to selectively modify elements.
I encountered this instruction while experimenting with _viv_asm and
packed types.
Here is one exmaple kernel:
kernel void k(global int* out, int a, int b) {
_viv_char2_packed s;
_viv_asm(MOV, s.x, s, a);
_viv_asm(MOV, s.y, s, b);
out[0] = s.x + s.y;
}
Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33474 >
2025-02-13 09:23:49 +00:00
Job Noorman
96887a5ec1
ir3/isa: fix (dis)asm of ldg.a/stg.a on a6xx
...
We currently assume the implicit offset shift is always 2. However, this
shift is actually based on the type, making sure the offset fields are
in units of the type size. The full offset calculation is as follows:
((SRC2<<SRC2_SHIFT) + OFF)<<TYPE_SHIFT
Where SRC2, SRC2_SHIFT, and OFF are instruction fields while TYPE_SHIFT
is implicit and derived from the TYPE field.
This commit implements (dis)assembly support for this, adopting the
syntax used by the blob.
Signed-off-by: Job Noorman <jnoorman@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33503 >
2025-02-13 08:01:58 +00:00
Job Noorman
5a8193e657
ir3/parser: add helper to generate syntax errors based on gen
...
The assembly syntax of certain instructions differs significantly
between generations (e.g., ldg.a/stg.a) so it's useful to be able to
generate syntax error based on the generation we are assembling for.
Signed-off-by: Job Noorman <jnoorman@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33503 >
2025-02-13 08:01:58 +00:00
Samuel Pitoiset
605f94520f
radv: simplify determining VBO size
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33506 >
2025-02-13 08:35:21 +01:00
Timur Kristóf
89cc4d9807
nir: Remove struct keyword from nir.h where possible.
...
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com >
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33439 >
2025-02-12 23:20:15 +01:00
Timur Kristóf
99054350ec
nir: Don't include u_format.h in nir.h, it's not actually used.
...
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com >
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33439 >
2025-02-12 23:20:15 +01:00
Timur Kristóf
76061b7fa3
nir: Don't include u_printf.h in nir.h, only where necessary.
...
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com >
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33439 >
2025-02-12 23:20:12 +01:00
Timur Kristóf
05df30f95a
nir: Don't include bitscan.h in nir.h, it's not actually used.
...
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com >
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33439 >
2025-02-12 22:33:07 +01:00
Timur Kristóf
e75eeaf2bd
nir: Don't include xxhash.h in nir.h, only where it is used.
...
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com >
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33439 >
2025-02-12 22:33:07 +01:00
Timur Kristóf
8260de6170
nvk: Don't include full nir.h in nvk_shader.h
...
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33439 >
2025-02-12 22:33:07 +01:00
Timur Kristóf
64887de2af
nak: Don't include full nir.h in nak.h
...
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33439 >
2025-02-12 22:33:07 +01:00
Timur Kristóf
5fd809b195
ttn: Don't include full nir.h where not necessary.
...
Acked-by: Faith Ekstrand <faith.ekstrand@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33439 >
2025-02-12 22:33:07 +01:00
Timur Kristóf
e0107f4ffb
zink: Don't include full nir.h where not necessary.
...
Acked-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Acked-by: Faith Ekstrand <faith.ekstrand@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33439 >
2025-02-12 22:33:07 +01:00
Timur Kristóf
b412e29027
hk: Don't include full nir.h in hk_shader.h
...
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Acked-by: Faith Ekstrand <faith.ekstrand@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33439 >
2025-02-12 22:33:07 +01:00
Timur Kristóf
666f10c174
radv: Add missing includes and remove unnecessary NIR includes.
...
RADV won't compile without the added includes after we
stop including the full nir.h from the VK common functions.
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev >
Acked-by: Faith Ekstrand <faith.ekstrand@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33439 >
2025-02-12 22:33:07 +01:00
Timur Kristóf
a91f105e5b
ac: Don't include full nir.h anymore.
...
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev >
Acked-by: Faith Ekstrand <faith.ekstrand@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33439 >
2025-02-12 22:33:07 +01:00
Timur Kristóf
147e17e999
aco: Don't include nir.h in aco_interface.h anymore.
...
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev >
Acked-by: Faith Ekstrand <faith.ekstrand@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33439 >
2025-02-12 22:33:07 +01:00
Timur Kristóf
91c28f67e6
ac/nir: Move surface related NIR functions to separate file.
...
This is to stop including nir related stuff in places that
actually don't need that.
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev >
Acked-by: Faith Ekstrand <faith.ekstrand@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33439 >
2025-02-12 22:33:07 +01:00
Timur Kristóf
305944def9
ac/nir: Don't include nir.h in headers anymore.
...
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev >
Acked-by: Faith Ekstrand <faith.ekstrand@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33439 >
2025-02-12 22:33:07 +01:00
Timur Kristóf
480c7100d8
glsl: Don't include full nir.h where not necessary.
...
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Acked-by: Faith Ekstrand <faith.ekstrand@collabora.com >
Acked-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33439 >
2025-02-12 22:33:07 +01:00
Timur Kristóf
f0966f7ac8
vk: Don't include full nir.h in headers.
...
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Acked-by: Faith Ekstrand <faith.ekstrand@collabora.com >
Acked-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33439 >
2025-02-12 22:33:07 +01:00
Timur Kristóf
23222346f3
spirv: Don't include full nir.h in nir_spirv.h
...
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Acked-by: Faith Ekstrand <faith.ekstrand@collabora.com >
Acked-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33439 >
2025-02-12 22:33:07 +01:00
Timur Kristóf
94996d546c
nir: Don't include the full nir.h when not necessary.
...
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com >
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Acked-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33439 >
2025-02-12 22:33:07 +01:00
Timur Kristóf
1ebe06f8f0
nir: Don't include full nir.h in nir_xfb_info.h
...
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com >
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Acked-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33439 >
2025-02-12 22:33:07 +01:00
Timur Kristóf
2385ac06fc
nir: Move nir_shader_compiler_options to separate file.
...
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com >
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Acked-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33439 >
2025-02-12 22:33:07 +01:00
Timur Kristóf
cccd3aa45c
nir: Move nir_tcs_info to separate file.
...
The nir_tcs_info struct is like nir_xfb_info in the sense that
it's very specialized and not often used, so it deserves its own
header too.
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com >
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Acked-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33439 >
2025-02-12 22:33:07 +01:00
Timur Kristóf
a6247319e7
nir: Move some enums and structs to nir_defines.h
...
These are necessary if we want to stop including the full nir.h
in most places accross the code base.
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com >
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Acked-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33439 >
2025-02-12 22:33:07 +01:00
Timur Kristóf
f699ceecc7
nir: Add forward declarations of relevant structs to nir_defines.h
...
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com >
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Acked-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33439 >
2025-02-12 22:33:07 +01:00
Timur Kristóf
f1292bd03e
nir: Add missing extern "C" to nir_defines.h
...
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com >
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Acked-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33439 >
2025-02-12 22:33:07 +01:00
Timur Kristóf
f4c80b419f
nir: Add struct names where they were missing.
...
This will allow forward declaring these in a subsequent commit.
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com >
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Acked-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33439 >
2025-02-12 22:33:07 +01:00
Timur Kristóf
c58c9e0359
util/enum_operators: Don't define anything for OpenCL
...
This file is going to be included in some headers that are shared
between normal C++ and OpenCL. And sadly OpenCL can't handle this.
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Acked-by: Faith Ekstrand <faith.ekstrand@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33439 >
2025-02-12 22:33:06 +01:00
Connor Abbott
a724e1571f
tu: Implement "absolute" bin mask on a750
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33230 >
2025-02-12 19:08:34 +00:00
Connor Abbott
faafcdf0be
freedreno: Add a750+ "absolute" VSC bin mask
...
This will let us avoid some corner cases where bin merging isn't
possible.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33230 >
2025-02-12 19:08:34 +00:00
Connor Abbott
3fdaad0948
tu: Implement bin merging for fragment density map
...
This will let us merge compatible bins with a larger-than-1 fragment
area, reducing tile load/store overhead.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33230 >
2025-02-12 19:08:34 +00:00
Connor Abbott
ab79e0de82
freedreno: Add VSC mask parameter to CP_SET_BIN_DATA5
...
This was added on a730, and specifies a mask of extra bins to include.
It's used to implement bin merging, creating larger bins out of
compatible smaller bins.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33230 >
2025-02-12 19:08:34 +00:00
Connor Abbott
b1756665a6
tu: Refactor fragment density map sampling
...
For bin merging, we will have to first sample all bins in the pipe, then
determine which bins can be merged, then iterate over bins. Combine all
of the information required to render a bin into a tu_tile_config struct
and pass it down to tu6_emit_tile_select(). This will let us more
flexibly construct a list of bins later.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33230 >
2025-02-12 19:08:34 +00:00
Connor Abbott
469ba3a07b
tu: Constify frag_areas argument of tu_fdm_bin_apply_t
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33230 >
2025-02-12 19:08:33 +00:00
Eric Engestrom
e41438275e
ci: debian-testing-ubsan is used by tests
...
Fixes: 37ee035e42 ("ci/build: add ubsan build jobs")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33509 >
2025-02-12 17:19:45 +00:00
Martin Roukala (né Peres)
dc7660d852
zink/ci: document more GA106 flakes
...
Signed-off-by: Martin Roukala (né Peres) <martin.roukala@mupuf.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33486 >
2025-02-12 16:51:19 +00:00
Martin Roukala (né Peres)
3c370aa572
zink/ci: document more radv flakes
...
Signed-off-by: Martin Roukala (né Peres) <martin.roukala@mupuf.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33486 >
2025-02-12 16:51:19 +00:00
Martin Roukala (né Peres)
c70a2526de
radv/ci: document more flakes
...
Signed-off-by: Martin Roukala (né Peres) <martin.roukala@mupuf.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33486 >
2025-02-12 16:51:19 +00:00
Martin Roukala (né Peres)
8097c002d1
radv/ci: set a tight timeout on vkcts-navi31
...
These jobs need to run in pre-merge, so let's make sure their execution
time remains in check so as not to block merges due to non-merge
pipelines.
Signed-off-by: Martin Roukala (né Peres) <martin.roukala@mupuf.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33486 >
2025-02-12 16:51:19 +00:00
Martin Roukala (né Peres)
7f75ad546d
radv/ci: reduce Renoir concurrency in vkcts
...
Deqp randomly dies at the beginning of VKCTS, which fails most
pipelines.
Reducing the job concurrency fixes the issue, so let's roll with that
until I go buy more RAM for this machine.
Signed-off-by: Martin Roukala (né Peres) <martin.roukala@mupuf.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33486 >
2025-02-12 16:51:19 +00:00
Martin Roukala (né Peres)
82a41bb8e3
radv/ci: add testing on RAPHAEL
...
This is the RDNA2 iGPU integrated in all the 7000 series of AMD CPU.
Signed-off-by: Martin Roukala (né Peres) <martin.roukala@mupuf.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33486 >
2025-02-12 16:51:19 +00:00
Eric Engestrom
c56835e470
docs: update calendar for 25.0.0-rc3
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33515 >
2025-02-12 16:39:27 +00:00