Konstantin Seurer
df3f2c89f5
radv/meta_buffer: Rename size_minus16 to max_offset
...
It's just better.
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24213 >
2023-07-20 07:43:16 +00:00
Konstantin Seurer
c49bd75fa7
radv/meta_buffer: Stop setting RADV_META_SAVE_DESCRIPTORS
...
Everything is done via push constants.
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24213 >
2023-07-20 07:43:16 +00:00
Konstantin Seurer
839d6f9fa2
radv: Stop using the misleading round_up_u* functions
...
The functions had the same behavior as DIV_ROUND_UP but their names do
not mention a division.
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24210 >
2023-07-20 06:51:30 +00:00
Chia-I Wu
539bf3929b
amd/ci: update radv-stoney-aco-fails.txt for depth/stencil clear
...
This MR fixes the
stencil_d32_sfloat_s8_uint_load_op_none_store_op_none_write_off one.
The rest appears to be outdated.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22114 >
2023-07-19 23:46:02 +00:00
Chia-I Wu
e0602775c1
radv: fix separate depth/stencil layouts in clear meta
...
Depth and stencil can be in different layouts.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22114 >
2023-07-19 23:46:02 +00:00
Chia-I Wu
aaec5ea293
radv: refactor depth clear in clear meta
...
Modify what we pass to radv_fast_clear_depth and emit_depthstencil_clear
in preparation for separate depth/stencil layouts.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22114 >
2023-07-19 23:46:02 +00:00
Chia-I Wu
a06cb572f6
radv: fix separate depth/stencil layouts in resolve meta
...
Depth and stencil can be in different layouts.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22114 >
2023-07-19 23:46:02 +00:00
Chia-I Wu
673d416e22
radv: fix separate depth/stencil layouts in fb state
...
Set S_028000_DEPTH_COMPRESS_DISABLE/S_028000_STENCIL_COMPRESS_DISABLE
depending on the depth/stencil layouts respectively.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22114 >
2023-07-19 23:46:02 +00:00
Eric Engestrom
b7298836c5
ci: move amd files rules to src/amd/ci/gitlab-ci.yml
...
Signed-off-by: Eric Engestrom <eric@igalia.com >
Acked-by: David Heidelberg <david.heidelberg@collabora.com >
Acked-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24099 >
2023-07-18 23:07:52 +00:00
Samuel Pitoiset
f334d00a8a
radv: make radv_get_pa_su_sc_mode_cntl() static
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24192 >
2023-07-18 17:07:19 +00:00
Samuel Pitoiset
9299a90cc1
radv: remove support for VK_INDIRECT_COMMANDS_TOKEN_TYPE_STATE_FLAGS_NV
...
This isn't used by vkd3d-proton which is the only user of DGC, no need
to overcomplicate this.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24192 >
2023-07-18 17:07:18 +00:00
Alyssa Rosenzweig
5178c81e26
radv: Rely on workgroup_size initialization
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com >
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24158 >
2023-07-17 19:53:49 +00:00
Rhys Perry
d4b211bf1b
ac/nir: always round cube array layers
...
It seems this is still necessary if conformant_trunc_coord=true.
Fixes various dEQP-VK.texture.shadow.cube_array.* and
dEQP-VK.glsl.texture_functions.texture*samplercubearray* failures with
conformant_trunc_coord.
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com >
Cc: 23.2 <mesa-stable>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24137 >
2023-07-17 12:17:22 +00:00
Rhys Perry
e02f8b62af
radv: don't unset TRUNC_COORD if conformant_trunc_coord=true
...
This isn't necessary.
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/24137 >
2023-07-17 12:17:21 +00:00
Rhys Perry
436df35c17
radv: add conformant_trunc_coord to cache UUID
...
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com >
Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24137 >
2023-07-17 12:17:21 +00:00
Rhys Perry
0cb26f31fe
ac/llvm: skip ballot zext for 32-bit dest with wave32-as-wave64
...
NGG lowering can ballots with a 32-bit destination even if the ballot bit
size is 64.
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24140 >
2023-07-17 11:21:35 +00:00
Rhys Perry
47c9dea6ac
ac/llvm: fix wave32 ac_build_mbcnt_add with 64-bit mask
...
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24140 >
2023-07-17 11:21:35 +00:00
Rhys Perry
7a199a051e
radv: fix radv_get_ballot_bit_size with CS
...
For wave64-as-wave32, this would return 32.
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24140 >
2023-07-17 11:21:34 +00:00
Rhys Perry
85d1159a2a
ac/llvm: fix AC_TM_CHECK_IR
...
This was using the wrong pass.
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Fixes: 3f272fd15e ("ac/llvm: fix build with LLVM 17")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24140 >
2023-07-17 11:21:34 +00:00
David Heidelberg
87439a8c71
ci/radeonsi: stoney arb_timer_query got fixed between kernel 6.3.1..13
...
Acked-by: Guilherme Gallo <guilherme.gallo@collabora.com >
Acked-by: Erico Nunes <nunes.erico@gmail.com >
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24079 >
2023-07-16 02:11:23 +02:00
Marek Olšák
043dcfad04
Revert "ac/nir/ngg: Follow intrinsic sources when analyzing before culling."
...
This reverts commit 411f69b9c5 .
It broke tessellation in Unigine Heaven with radeonsi.
Fixes: 411f69b9c5 - ac/nir/ngg: Follow intrinsic sources when analyzing before culling.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24160 >
2023-07-14 12:00:44 -04:00
Timur Kristóf
7ad9416c61
ac/llvm: Remove subgroup_id and num_subgroups intrinsics.
...
We expect that these will be lowered in NIR now.
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24005 >
2023-07-14 12:17:24 +00:00
Timur Kristóf
9fb9e54d69
aco: Remove subgroup_id and num_subgroups intrinsics.
...
These are lowered in NIR now.
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com >
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24005 >
2023-07-14 12:17:24 +00:00
Timur Kristóf
9bade0205a
radv: Use ac_nir_lower_intrinsics_to_args.
...
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com >
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24005 >
2023-07-14 12:17:24 +00:00
Timur Kristóf
6551be9c6e
radv: Move radv_select_hw_stage to radv_shader_info.
...
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com >
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24005 >
2023-07-14 12:17:24 +00:00
Timur Kristóf
5825e20dbf
ac/nir: Add new pass to lower intrinsics to shader args.
...
This is beneficial for intrinsics that do an algebraic
instruction such as bitfield extract on shader arguments,
because it allows NIR to be aware of these instructions and
optimize them together with other algebraic instructions in
the shader.
Currently, just handle subgroup_id and num_subgroups intrinsics.
More will be added here in the future.
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24005 >
2023-07-14 12:17:24 +00:00
Timur Kristóf
a7f2d821ec
ac/nir: Simplify arg unpacking when shift is zero.
...
This is so we can just use the same function when it's zero.
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24005 >
2023-07-14 12:17:24 +00:00
Timur Kristóf
dc3bbd351a
aco: Fix subgroup_id intrinsic on GFX10.3+.
...
Change this to match how it works in the LLVM backend.
Cc: mesa-stable
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com >
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24005 >
2023-07-14 12:17:24 +00:00
Friedrich Vock
d810d67a8c
radv/ci: Set DRIVER_NAME in LAVA raven vkcts jobs
...
Some CTS tests work with RADV, but take a very long time, making
deqp-runner trigger timeout failures. These tests are supposed to be
skipped, so they're contained in radv-skips.txt. But without setting
DRIVER_NAME to "radv", deqp-runner.sh won't pick up that file.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24095 >
2023-07-12 20:30:51 +00:00
Timur Kristóf
127999989a
aco: Add MESA_SHADER_KERNEL to instruction selection setup.
...
Treat it the same way as MESA_SHADER_COMPUTE.
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com >
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24112 >
2023-07-12 11:24:44 +00:00
Eric Engestrom
8e383e6d9e
ci: set priority:low tag only on non-Marge pipelines
...
This allows dynamically setting the priority to avoid starving Marge.
Signed-off-by: Eric Engestrom <eric@igalia.com >
Reviewed-by: Martin Roukala (né Peres) <martin.roukala@mupuf.org >
Reviewed-by: David Heidelberg <david.heidelberg@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23976 >
2023-07-11 13:50:38 +00:00
Daniel Schürmann
7e4870e8e5
amd: Do shader binary alignment for prefetch at memory allocation time.
...
This makes it consistent between drivers and compilers.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23799 >
2023-07-11 12:01:45 +00:00
Daniel Schürmann
437bf4fccb
amd: move end-of-code marker padding to ACO.
...
This makes it consistent between drivers and compilers.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23799 >
2023-07-11 12:01:45 +00:00
Daniel Schürmann
e88c0bb945
radv: migrate radv_shader hash to BLAKE3
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23974 >
2023-07-11 09:02:43 +00:00
Daniel Schürmann
8740fb0026
radv/meta: disable disk cache for meta shaders
...
Meta shaders are already stored in a separate cache file,
inserting them into the disk cache is unnecessary.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23909 >
2023-07-11 07:36:53 +00:00
Daniel Schürmann
c778803d67
aco/assembler: change prefetch mode on GFX10.3+ during loops if beneficial
...
Totals from 8864 (6.68% of 132726) affected shaders: GFX11
CodeSize: 90776128 -> 90923760 (+0.16%)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23748 >
2023-07-11 07:15:43 +00:00
Daniel Schürmann
b9c5b273b0
aco/assembler: align loops if it reduces the number of cache lines
...
This is especially beneficial on GFX6-9.
Totals from 11229 (8.46% of 132726) affected shaders: GFX11
CodeSize: 109608640 -> 109840916 (+0.21%)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23748 >
2023-07-11 07:15:43 +00:00
Daniel Schürmann
de8ecc127e
aco/assembler: align resume shaders with cache lines
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23748 >
2023-07-11 07:15:43 +00:00
Yonggang Luo
bd27faf083
treewide: remove unused nir_builder
...
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com >
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24038 >
2023-07-10 19:20:17 +00:00
Yonggang Luo
48a25ef700
treewide: Remove all usage of nir_builder_init with nir_builder_create and nir_builder_at
...
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com >
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24038 >
2023-07-10 19:20:17 +00:00
Friedrich Vock
e034ba1c44
radv/rt: Miss rays that hit the triangle's v edge
...
The hardware seems to do this as well. Avoids invoking hit shaders twice
at shared edges.
Fixes the fails in watertightness tests on emulated RT.
Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24063 >
2023-07-10 18:31:30 +00:00
Friedrich Vock
a096cf784f
radv/rt: Enable exact on software intersection functions
...
These functions need exact output, otherwise watertightness can't be
guaranteed in some cases.
Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24063 >
2023-07-10 18:31:30 +00:00
Erik Faye-Lund
6d42711043
radv: do not rely on constant-folding
...
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24004 >
2023-07-10 16:06:40 +02:00
Marek Olšák
146a92dd9f
radeonsi/gfx11: only use SET_*_PAIRS* packets on dGPUs
...
They are not available on APUs.
This adds a new template parameter HAS_PAIRS. into draw functions.
Other places add back the non-pairs code for gfx11.
Fixes: 22f3bcfb - radeonsi/gfx11: use SET_*_REG_PAIRS_PACKED packets for pm4 states
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/9259
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24010 >
2023-07-09 04:18:05 -04:00
Friedrich Vock
d92520e19c
Revert "Revert "radv: Enable ray tracing pipelines by default""
...
This reverts commit 49b400423c .
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23978 >
2023-07-08 10:10:15 +00:00
Friedrich Vock
816ed055ac
Revert "radv/rt: Enable RT pipelines on GFX10_3+ excluding vangogh"
...
This reverts commit 7f3874981d .
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23978 >
2023-07-08 10:10:15 +00:00
Friedrich Vock
0804e150e4
radv/ci: Skip ray tracing tests on vangogh
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23978 >
2023-07-08 10:10:15 +00:00
David Heidelberg
66a01b9377
ci/amd: switch all possible jobs from X11 to Wayland
...
Saved time is around 3 - 4 minutes per job,
decreasing runtime from ~ 19 minutes to ~ 15 minutes.
Acked-by: Daniel Stone <daniels@collabora.com >
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23964 >
2023-07-08 00:16:33 +02:00
Jesse Natalie
511116d630
radv: Fix label name
...
Reviewed-by: Eric Engestrom <eric@igalia.com >
Acked-by: Daniel Stone <daniels@collabora.com >
Acked-by: David Heidelberg <david.heidelberg@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24042 >
2023-07-07 17:40:38 +00:00
Emma Anholt
ee7e440743
ci/radv: Add testing of the GLES CTS using ANGLE on stoney.
...
We're interested in a Vulkan-only stack in Chrome OS, where Android's GLES
would be provided by ANGLE-over-Venus-over-RADV. Let's get some testing
covering ANGLE-on-RADV first.
This is structured as a single partial job pre-merge to catch most
regressions, and 2 longer manual jobs to do full coverage for when you
need to update the xfails list.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20163 >
2023-07-06 23:12:30 +00:00