Samuel Pitoiset
bb623b6144
amd/common: add a helper to set the third word of buffer descriptor
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29385 >
2024-05-27 08:17:58 +02:00
Martin Roukala (né Peres)
addeb5ca9a
radv/ci: add a bunch of flakes
...
Signed-off-by: Martin Roukala (né Peres) <martin.roukala@mupuf.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29381 >
2024-05-24 21:05:46 +00:00
Martin Roukala (né Peres)
9a7facc97d
radv+zink/ci: document recent flakes
...
Signed-off-by: Martin Roukala (né Peres) <martin.roukala@mupuf.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29381 >
2024-05-24 21:05:46 +00:00
Samuel Pitoiset
003d49c0bc
ac,radv,radeonsi: add a function to translate texture data format
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29301 >
2024-05-24 17:04:54 +02:00
Samuel Pitoiset
e1997226da
radv: use PIPE_FORMAT in radv_translate_tex_dataformat()
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29301 >
2024-05-24 17:04:54 +02:00
Samuel Pitoiset
7785a63fc0
amd/common: add ac_gpu_info::has_etc_support
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29301 >
2024-05-24 17:04:54 +02:00
Marek Olšák
35c5435eae
ac/llvm: fix incorrect parameter type in llvm.amdgcn.s.nop
...
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29313 >
2024-05-24 13:48:28 +00:00
Marek Olšák
ad07ea3162
amd: enable 32B minimum DCC block size for gfx1151
...
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29313 >
2024-05-24 13:48:28 +00:00
Marek Olšák
cf4eb41540
amd: add more gfx11 APUs
...
Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29313 >
2024-05-24 13:48:28 +00:00
Marek Olšák
7650127040
amd: update addrlib
...
Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29313 >
2024-05-24 13:48:28 +00:00
Samuel Pitoiset
cd5f980d51
ac,radv,radeonsi: move ZRANGE_PRECISION to mutable DS fields
...
The DS surfaces are now completely configured in common code.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29349 >
2024-05-24 11:48:32 +00:00
Samuel Pitoiset
332a06903d
ac,radv,radeonsi: a function that sets mutable DS surface fields
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29349 >
2024-05-24 11:48:32 +00:00
Samuel Pitoiset
1a08fa6150
ac,radv,radeonsi: add function to get the number of ZPLANES
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29349 >
2024-05-24 11:48:32 +00:00
Samuel Pitoiset
709452b9d1
radv: do not check image usage for ITERATE256 with TC-compat HTILE
...
This is redundant because TC-compat HTILE is only enabled for images
that are readable by shaders.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29349 >
2024-05-24 11:48:32 +00:00
Samuel Pitoiset
dcfa351af3
radv: only enable DB_STENCIL_INFO.ITERATE_FLUSH when necessary
...
When no HTILE for stencil this shouldn't be neessary.
This also matches RadeonSI.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29349 >
2024-05-24 11:48:32 +00:00
David Heidelberg
33492dd9e8
ci/radv: dEQP-GLES3.functional.polygon_offset.fixed16_render_with_units passes now
...
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29367 >
2024-05-24 03:45:44 +00:00
Eric Engestrom
bfd4db0476
radv/ci: move amdgpu-specific kernel message warning to src/amd/ci/
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29339 >
2024-05-23 18:28:41 +00:00
Samuel Pitoiset
ed30b320c8
radv: use the common helper for initializing DS surfaces
...
This adds GFX12 support implicitly.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29329 >
2024-05-23 15:47:14 +00:00
Samuel Pitoiset
636110485f
amd/common: add a function to initialize ds surface
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29329 >
2024-05-23 15:47:14 +00:00
Samuel Pitoiset
e1da1c891c
radv: separate non-mutable vs mutable fields for ds surface
...
RADV doesn't really have a concept of mutable fields but RadeonSI does.
Separate setting those fields to introduce common helpers.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29329 >
2024-05-23 15:47:14 +00:00
Samuel Pitoiset
55be5868c5
radv: tidy up radv_initialise_ds_surface()
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29329 >
2024-05-23 15:47:14 +00:00
Samuel Pitoiset
e9a390cb94
radv: replace db_{z,stencil}_{read,write}_base by db_{depth,stencil}_base
...
Both read/write register values are similar.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29329 >
2024-05-23 15:47:14 +00:00
Samuel Pitoiset
2867a07922
radv: fix setting a custom pitch for CB on GFX10_3+
...
The gfx_level check was missing the version...
Found by inspection.
Fixes: 3f7ddaf281 ("radv: implement setting a custom pitch to any multiple of 256B on gfx10.3+"
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29331 >
2024-05-23 06:10:07 +00:00
Samuel Pitoiset
f458b0fc4b
radv: replace vk_to_non_srgb_format() by vk_format_no_srgb()
...
Similar but it handles more formats.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29322 >
2024-05-22 16:34:17 +00:00
Samuel Pitoiset
bab26a239e
radv: simplify radv_is_vertex_buffer_format_supported()
...
ac_translate_buffer_dataformat() already handles everything correctly.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29322 >
2024-05-22 16:34:17 +00:00
Samuel Pitoiset
e7016fb7a6
radv: remove useless check about FIXED formats
...
There are no FIXED formats in Vulkan.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29322 >
2024-05-22 16:34:17 +00:00
Samuel Pitoiset
33e558f64a
radv: remove unused radv_translate_buffer_dataformat()
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29322 >
2024-05-22 16:34:17 +00:00
Timur Kristóf
3963e4b53a
radv: Fix TCS -> TES I/O linking typo of VARYING_SLOT vs. BIT.
...
In these bitwise expressions, VARYING_BIT_* should be used,
but the code mistakenly used VARYING_SLOT_* which is wrong.
Fixes: 0e481a4adc
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29327 >
2024-05-22 14:39:49 +00:00
Friedrich Vock
18c736bcfc
radeonsi: Use max_se instead of num_se where appropriate
...
Scratch allocation needs to happen using max_se, otherwise there can be
hangs.
Cc: mesa-stable
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29202 >
2024-05-22 10:35:01 +00:00
Friedrich Vock
db564a40b3
radv: Use max_se instead of num_se where appropriate
...
Scratch allocation needs to happen using max_se, otherwise there can be
hangs.
Cc: mesa-stable
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29202 >
2024-05-22 10:35:01 +00:00
Samuel Pitoiset
3d6957268b
aco: use new common helpers for building buffer descriptors
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29268 >
2024-05-22 08:31:39 +00:00
Samuel Pitoiset
074f3cfe73
radv: use new common helpers for building buffer descriptor
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29268 >
2024-05-22 08:31:39 +00:00
Samuel Pitoiset
d3b01fd95e
amd/common: add new helpers to build buffer descriptors
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29268 >
2024-05-22 08:31:39 +00:00
Samuel Pitoiset
3224fd706c
amd/common: only pass gfx_level to ac_get_gfx10_format_table()
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29268 >
2024-05-22 08:31:39 +00:00
Samuel Pitoiset
64fefc1179
ac,radv,radeonsi: add a common helper for translating swizzle
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29268 >
2024-05-22 08:31:39 +00:00
Samuel Pitoiset
2487a87552
ac,radv,radeonsi: add function to determine if alpha should be on MSB
...
The only difference for RADV is that the helper now converts SRGB
formats to non-SRGB but that shouldn't change anything in practice.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29308 >
2024-05-22 08:17:31 +02:00
Samuel Pitoiset
179f4ed414
radv: adjust determining if alpha should be on MSB
...
Ported from RadeonSI.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29308 >
2024-05-22 08:14:56 +02:00
Samuel Pitoiset
68c4d26691
radv: only set ALPHA_IS_ON_MSB if the image has DCC on GFX6-9
...
This is technically incorrect to only check meta_offset which might be
non-zero for CMASK/FMASK but this applies to DCC only.
Cc: mesa-stable
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29308 >
2024-05-22 08:14:56 +02:00
Rhys Perry
b99c48b011
aco/lower_phis: don't create boolean loop header phis in some situations
...
If we have a loop with continue_or_break and no divergent exits, there is
no need for a loop header phi.
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/29121 >
2024-05-21 21:28:13 +00:00
Rhys Perry
4ae8a558b2
aco: remove nir_to_aco
...
This isn't used anymore
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/29121 >
2024-05-21 21:28:13 +00:00
Rhys Perry
b1964f03e7
aco: use scalar phi lowering for lcssa workaround
...
This lets us use non-undef for the last operand, if necessary
(demonstrated in the test).
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/29121 >
2024-05-21 21:28:13 +00:00
Rhys Perry
bbe4652430
aco: create lcssa phis for continue_or_break loops when necessary
...
These might not exist because adding would decrease the quality of
divergence analysis. They are necessary for continue_or_break though, so
add them later, where they won't affect divergence analysis.
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/10623
Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29121 >
2024-05-21 21:28:13 +00:00
Rhys Perry
3fc7207f50
aco/lower_phis: create loop header phis for non-boolean loop exit phis
...
These might be necessary if continue_or_break and divergent breaks are both used:
loop {
if (divergent) {
a = loop_invariant_sgpr
break
}
discard_if
}
b = phi a
If we break because discard_if makes exec empty but only did so in
previous iterations, then the phi should use "a" from those previous
iterations.
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/29121 >
2024-05-21 21:28:13 +00:00
Timur Kristóf
0e0c2574d1
radv: Add shader stats for inputs and outputs.
...
These new stats report the combined inputs and outputs of
graphics stages stages where applicable.
Task -> Mesh payload is not included.
This is useful for reporting the effects of any shader
optimizations which affect linking.
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29209 >
2024-05-21 20:37:05 +00:00
Timur Kristóf
590fff6906
radv: Add TES num_linked_patch_inputs.
...
Not needed by actual driver functionality, but will be
used for reporting I/O stats.
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29209 >
2024-05-21 20:37:05 +00:00
Samuel Pitoiset
bb09fac659
ac,radv,radeonsi: add a function for getting border color swizzle
...
The swizzle for 8-bit stencil shuld be also fine on RadeonSI.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29307 >
2024-05-21 19:12:52 +00:00
Marek Olšák
5a115b1055
ac/llvm: global stores should have no holes in the writemask
...
Reviewed-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29282 >
2024-05-21 18:20:30 +00:00
Marek Olšák
7952e4fc7a
ac: move radv_mem_vectorize_callback to common code
...
Reviewed-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29282 >
2024-05-21 18:20:30 +00:00
Samuel Pitoiset
26cd3a1718
ac,radv,radeonsi: add a helper to set mutable tex desc fields
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29286 >
2024-05-21 16:41:40 +00:00
Samuel Pitoiset
7523c1ec57
radv: stop clearing unnecessary bitfields in radv_set_mutable_tex_desc_fields()
...
They should already be zero because nothing else sets them before.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29286 >
2024-05-21 16:41:40 +00:00