37 lines
1.6 KiB
Diff
37 lines
1.6 KiB
Diff
From 8653abac095c76fc898cbd72bc67b10b828c3478 Mon Sep 17 00:00:00 2001
|
|
From: =?UTF-8?q?Timur=20Krist=C3=B3f?= <timur.kristof@gmail.com>
|
|
Date: Mon, 25 Nov 2024 22:19:28 +0100
|
|
Subject: [PATCH] ac/nir/ngg: Remove erroneous NUW addition from workgroup
|
|
scan.
|
|
MIME-Version: 1.0
|
|
Content-Type: text/plain; charset=UTF-8
|
|
Content-Transfer-Encoding: 8bit
|
|
|
|
This may add constant -1 so naturally it can indeed cause
|
|
an unsigned wrap.
|
|
|
|
Fixes: 492d8f37782c14fd4c34b81c10f0f6ed0daa807c
|
|
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/12204
|
|
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
|
|
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com>
|
|
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32338>
|
|
---
|
|
src/amd/common/ac_nir_lower_ngg.c | 2 +-
|
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
|
|
diff --git a/src/amd/common/ac_nir_lower_ngg.c b/src/amd/common/ac_nir_lower_ngg.c
|
|
index d1c361165ffa4..c63441f06959c 100644
|
|
--- a/src/amd/common/ac_nir_lower_ngg.c
|
|
+++ b/src/amd/common/ac_nir_lower_ngg.c
|
|
@@ -419,7 +419,7 @@ repack_invocations_in_workgroup(nir_builder *b, nir_def **input_bool,
|
|
|
|
for (unsigned i = 0; i < num_repacks; ++i) {
|
|
nir_def *index_base_lane = nir_iadd_imm_nuw(b, wave_id, i * 16);
|
|
- nir_def *num_invocartions_lane = nir_iadd_imm_nuw(b, num_waves, i * 16 - 1);
|
|
+ nir_def *num_invocartions_lane = nir_iadd_imm(b, num_waves, i * 16 - 1);
|
|
nir_def *wg_repacked_index_base =
|
|
nir_isub(b, nir_read_invocation(b, sum, index_base_lane), surviving_invocations_in_current_wave[i]);
|
|
results[i].num_repacked_invocations =
|
|
--
|
|
|