Qiang Yu
f07dab1899
doc: mark GL_EXT_mesh_shader as done
...
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38044 >
2025-11-13 01:30:29 +00:00
Qiang Yu
ece827d53b
radeonsi: enable EXT_mesh_shader
...
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38044 >
2025-11-13 01:30:27 +00:00
Qiang Yu
3d01529316
radeonsi: si_calculate_max_simd_waves support task and mesh shader
...
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38044 >
2025-11-13 01:30:25 +00:00
Qiang Yu
4495978932
radeonsi: handle maybe per primitive input for fragment shader
...
Some fragment shader may be per-primitive when mesh pipeline,
per-vertex when vertex pipeline. We sort these inputs always
after other per-vertex inputs in nir_recompute_io_bases, so
fragment shader code is same, just need to set different reg.
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38044 >
2025-11-13 01:30:24 +00:00
Qiang Yu
1733dddee9
radeonsi: add mesh shader functions
...
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38044 >
2025-11-13 01:30:23 +00:00
Qiang Yu
4c220f9745
radeonsi: add si_emit_rasterizer_prim_state_for_mesh
...
To be used by mesh pipeline.
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38044 >
2025-11-13 01:30:22 +00:00
Qiang Yu
4ee6553767
radeonsi: add si_update_shaders_for_mesh
...
To be used by mesh pipeline.
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38044 >
2025-11-13 01:30:20 +00:00
Qiang Yu
8410970e8b
radeonsi: add si_update_shaders_shared_by_vertex_and_mesh_pipe
...
Move shared part of si_update_shaders to this function,
no implementation change.
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38044 >
2025-11-13 01:30:19 +00:00
Qiang Yu
87715a1c8c
radeonsi: compute culldist_mask and clipdist_mask for mesh shader
...
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38044 >
2025-11-13 01:30:18 +00:00
Qiang Yu
355e499b52
radeonsi: si_emit_buffered_compute_sh_regs support gang cs
...
To be used by task shader gang cs.
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38044 >
2025-11-13 01:30:17 +00:00
Qiang Yu
b713f453c6
radeonsi: lower mesh shader local id and workgroup id
...
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38044 >
2025-11-13 01:30:15 +00:00
Qiang Yu
2e025d66c3
radeonsi: add task shader queries support
...
Need to emit query start/stop/sample packets in compute
queue.
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38044 >
2025-11-13 01:30:15 +00:00
Qiang Yu
9a31151436
radeonsi: increase task wait count when emit barrier
...
It will be waited by task queue too.
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38044 >
2025-11-13 01:30:15 +00:00
Qiang Yu
c0f6e97d6c
radeonsi: implement nir_intrinsic_load_ring_mesh_scratch_amd
...
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38044 >
2025-11-13 01:30:13 +00:00
Qiang Yu
5048216b43
radeonsi: init mesh shader ngg info
...
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38044 >
2025-11-13 01:30:13 +00:00
Qiang Yu
432f66a7b6
radeonsi: add si_create_compute_state_for_nir
...
To be shared by task shader state creation.
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38044 >
2025-11-13 01:30:11 +00:00
Qiang Yu
263cce11bd
radeonsi: move shared_size to si_shader_variant_info
...
For mesh shader which know this after ac_nir_lower_ngg_mesh.
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38044 >
2025-11-13 01:30:08 +00:00
Qiang Yu
e3ab6249f2
radeonsi: export si_init_compute_preamble_state for task shader
...
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38044 >
2025-11-13 01:30:03 +00:00
Qiang Yu
0ee4747678
radeonsi: log cs support mesh shader
...
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38044 >
2025-11-13 01:30:02 +00:00
Qiang Yu
f1138c18ac
radeonsi: implement task ring nir intrinsic lower
...
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38044 >
2025-11-13 01:30:02 +00:00
Qiang Yu
e819554b2a
radeonsi: add task/mesh shader context states
...
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38044 >
2025-11-13 01:30:00 +00:00
Qiang Yu
cffc40051d
winsys/amdgpu: support gang submit for kernel queue
...
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38044 >
2025-11-13 01:29:58 +00:00
Qiang Yu
963ad4bb4e
radeonsi: add si_emit_task_shader_pointers
...
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38044 >
2025-11-13 01:29:58 +00:00
Qiang Yu
66cd3f1b52
radeonsi: add si_upload_shader_descriptos
...
To be shared with gfx, mesh and compute pipeline.
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38044 >
2025-11-13 01:29:55 +00:00
Qiang Yu
12f33b596c
radeonsi: export si_setup_compute_scratch_buffer for task shader
...
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38044 >
2025-11-13 01:29:54 +00:00
Qiang Yu
915d5167af
radeonsi: change arg for si_cp_dma_prefetch
...
To be used by gang cs too.
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38044 >
2025-11-13 01:29:52 +00:00
Yonggang Luo
8c427aae92
util: Remove unused ALIGN function to prevent future use
...
The #undef ALIGN is also not needed anymore, remove it.
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com >
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38365 >
2025-11-12 21:58:41 +00:00
Yonggang Luo
ecb0ccf603
treewide: Replace calling to function ALIGN with align
...
This is done by grep ALIGN( to align(
docs,*.xml,blake3 is excluded
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com >
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38365 >
2025-11-12 21:58:40 +00:00
Yonggang Luo
03a32b3fe2
radeon/drm: Replace all usage of ALIGN to align and remove ALIGN macro
...
As now all ALIGN usage is on 32bit integer
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com >
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38365 >
2025-11-12 21:58:38 +00:00
Yonggang Luo
0fe6143a77
radeon/drm: use align64 for 64 bits input instead of ALIGN
...
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com >
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38365 >
2025-11-12 21:58:38 +00:00
Yonggang Luo
f8eafbe627
aco: Use align64 instead ALIGN for 64 bits input
...
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com >
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38365 >
2025-11-12 21:58:38 +00:00
Yonggang Luo
ee4c3e790f
anv: use align/align64 instead ALIGN, as the input is size_t/uint64_t
...
When the input is size_t, cast the input to uint32_t, as the output is expect uint32_t not size_t
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com >
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38365 >
2025-11-12 21:58:38 +00:00
Yonggang Luo
db767eb7e0
brw: Do not use align as variable name, as it's a function in u_math.h and will be used
...
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com >
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38365 >
2025-11-12 21:58:38 +00:00
Yonggang Luo
d95d7b85ca
panfrost/drm-shim: Use align_uintptr instead of ALIGN for size_t input
...
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com >
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38365 >
2025-11-12 21:58:38 +00:00
Yonggang Luo
dd97f64e88
freedreno: Use align64 instead ALIGN for 64 bits input
...
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com >
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38365 >
2025-11-12 21:58:38 +00:00
Yonggang Luo
974f9833cb
freedreno: Do not use align as variable name, as it's a function in u_math.h and will be used
...
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com >
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38365 >
2025-11-12 21:58:38 +00:00
Konstantin Seurer
b241b26d11
nir: Remove nir_def::parent_instr
...
This reduces the footprint of nir_def by 8B on 64-bit systems.
Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@intel.com >
Acked-by: Marek Olšák <maraeo@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38313 >
2025-11-12 21:22:13 +00:00
Konstantin Seurer
de32f9275f
treewide: add & use parent instr helpers
...
We add a bunch of new helpers to avoid the need to touch >parent_instr,
including the full set of:
* nir_def_is_*
* nir_def_as_*_or_null
* nir_def_as_* [assumes the right instr type]
* nir_src_is_*
* nir_src_as_*
* nir_scalar_is_*
* nir_scalar_as_*
Plus nir_def_instr() where there's no more suitable helper.
Also an existing helper is renamed to unify all the names, while we're
churning the tree:
* nir_src_as_alu_instr -> nir_src_as_alu
..and then we port the tree to use the helpers as much as possible, using
nir_def_instr() where that does not work.
Acked-by: Marek Olšák <maraeo@gmail.com >
---
To eliminate nir_def::parent_instr we need to churn the tree anyway, so I'm
taking this opportunity to clean up a lot of NIR patterns.
Co-authored-by: Konstantin Seurer <konstantin.seurer@gmail.com >
Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38313 >
2025-11-12 21:22:13 +00:00
Yonggang Luo
34e7fa2fe6
nir: Disable gcc warning -Wstringop-overflow for nir_intrinsic_set_* for latter commit
...
gcc has a a false positive here, silenced with the pragmas, use separate commit
for easily revert latter once gcc fixed it.
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com >
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38313 >
2025-11-12 21:22:13 +00:00
Konstantin Seurer
e231aec0c9
nir: Move nir_def directly after nir_instr
...
This way, all instruction types have the nir_def at the same offset.
Acked-by: Marek Olšák <maraeo@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38313 >
2025-11-12 21:22:13 +00:00
Alyssa Rosenzweig
013a6bfc70
pan/bi: clean up NIR
...
txf_ms(BUFFER) doesn't exist.
while in the area.
Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@intel.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38313 >
2025-11-12 21:22:13 +00:00
Alyssa Rosenzweig
11e5f0b60d
pan/bi: initialize variable to fix warning
...
../src/compiler/nir/nir.h:1152:11: attention: « buf_index » pourrait être utilisé sans être initialisé [-Wmaybe-uninitialized]
1152 | return src;
| ^~~
../src/panfrost/compiler/bifrost_compile.c: Dans la fonction « lower_texel_buffer_fetch »:
../src/panfrost/compiler/bifrost_compile.c:6234:13: note: « buf_index » a été déclaré ici
6234 | nir_def *buf_index;
Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@intel.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38313 >
2025-11-12 21:22:12 +00:00
Yonggang Luo
24a7d53329
util: Add PRAGMA_DIAGNOSTIC_IGNORED_CLANG PRAGMA_DIAGNOSTIC_IGNORED_GCC for latter use
...
gcc and clang do not have equal set of warnings, so when warning are specific to CLANG or GCC, using PRAGMA_DIAGNOSTIC_IGNORED_CLANG or PRAGMA_DIAGNOSTIC_GCC_IGNORED instead
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com >
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38313 >
2025-11-12 21:22:10 +00:00
Alyssa Rosenzweig
583b25e806
util: fix container_of on MSVC
...
otherwise &container_of(..)->foo won't work, need extra parens. gcc version is
fine.
Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@intel.com >
Reviewed-by: Yonggang Luo <luoyonggang@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38313 >
2025-11-12 21:22:10 +00:00
Jose Maria Casanova Crespo
a0b8ee614d
v3dv: only apply simulator stride alignment for from_wsi images
...
This adds from_wsi field to v3dv_image, so we can apply simulator stride
alignment only to WSI images.
Handling VK_STRUCTURE_TYPE_WSI_IMAGE_CREATE_INFO_MESA at
v3dv_GetPhysicalDeviceFormatProperties2 also removes debug warnings like:
MESA: debug: v3dv_GetPhysicalDeviceImageFormatProperties2: ignored VkStructureType Unknown VkStructureType value.(1000001002)
Fixes: 562bb8b62b ("v3dv: align width to 256 when using simulator")
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38374 >
2025-11-12 21:03:42 +00:00
Faith Ekstrand
7411acaa77
panvk/dispatch: s/shader/cs/g
...
Even though "shader" uniquely means something here and we don't need to
specify what stage, "cs" is still shorter, obvious, and matches what we
do all over the 3D code so it saves some cognitive load when bouncing
back and forth.
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Christoph Pillmayer <christoph.pillmayer@arm.com >
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38403 >
2025-11-12 20:44:13 +00:00
Faith Ekstrand
1046f5ed48
panvk: Make noperspective_varyings const
...
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Reviewed-by: Christoph Pillmayer <christoph.pillmayer@arm.com >
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38403 >
2025-11-12 20:44:12 +00:00
Joshua Simmons
7ac1f7777d
vtn: Fix OpCopyLogical destination type
...
Previously the type info for nested values was copied from the source
operand, rather than propagating the new type from the destination
operand.
Fixes: 4c363acf94 ("vtn: Allow for OpCopyLogical with different but compatible types")
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38248 >
2025-11-12 20:30:30 +01:00
Eric Engestrom
43fe66c26a
docs: add 25.2.8 to the calendar
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38407 >
2025-11-12 19:09:53 +01:00
Eric Engestrom
0644351297
docs: add sha sum for 25.2.7
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38407 >
2025-11-12 19:08:44 +01:00