blob: 48fc1e37ff05f499f7d879f200cc1e1373157907 [file] [log] [blame]
Patrick Williamsdb4c27e2022-08-05 08:10:29 -05001Backport merge request to fix mesa compile error when debug build
2enabled.
3
4Upstream-Status: Submitted [https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17439]
5
6Signed-off-by: Kai Kang <kai.kang@windriver.com>
7
8From c69c6e7a35205557de73734ad4a1f411c8f99926 Mon Sep 17 00:00:00 2001
9From: t bettler <thomas.bettler@gmail.com>
10Date: Sat, 9 Jul 2022 09:28:51 +0000
11Subject: [PATCH] nir/nir_opt_move: fix ALWAYS_INLINE compiler error
12MIME-Version: 1.0
13Content-Type: text/plain; charset=UTF-8
14Content-Transfer-Encoding: 8bit
15
16fix call to always_inline src_is_ssa
17
18Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/6825
19Fixes: f1d20ec67c3f186886b97de94f74484650f8fda1 ("nir/nir_opt_move: handle non-SSA defs ")
20---
21 src/compiler/nir/nir_inline_helpers.h | 10 ++++++++--
22 src/compiler/nir/nir_opt_move.c | 2 +-
23 2 files changed, 9 insertions(+), 3 deletions(-)
24
25diff --git a/src/compiler/nir/nir_inline_helpers.h b/src/compiler/nir/nir_inline_helpers.h
26index 125dd8a537c..ec33f0509f7 100644
27--- a/src/compiler/nir/nir_inline_helpers.h
28+++ b/src/compiler/nir/nir_inline_helpers.h
29@@ -73,8 +73,8 @@ nir_foreach_dest(nir_instr *instr, nir_foreach_dest_cb cb, void *state)
30 return _nir_foreach_dest(instr, cb, state);
31 }
32
33-static inline bool
34-nir_foreach_src(nir_instr *instr, nir_foreach_src_cb cb, void *state)
35+static ALWAYS_INLINE bool
36+_nir_foreach_src(nir_instr *instr, nir_foreach_src_cb cb, void *state)
37 {
38 switch (instr->type) {
39 case nir_instr_type_alu: {
40@@ -162,3 +162,9 @@ nir_foreach_src(nir_instr *instr, nir_foreach_src_cb cb, void *state)
41 dest_state.cb = cb;
42 return _nir_foreach_dest(instr, _nir_visit_dest_indirect, &dest_state);
43 }
44+
45+static inline bool
46+nir_foreach_src(nir_instr *instr, nir_foreach_src_cb cb, void *state)
47+{
48+ return _nir_foreach_src(instr, cb, state);
49+}
50diff --git a/src/compiler/nir/nir_opt_move.c b/src/compiler/nir/nir_opt_move.c
51index 81bcde5c436..051c3cc6295 100644
52--- a/src/compiler/nir/nir_opt_move.c
53+++ b/src/compiler/nir/nir_opt_move.c
54@@ -60,7 +60,7 @@ src_is_ssa(nir_src *src, void *state)
55 static ALWAYS_INLINE bool
56 instr_reads_register(nir_instr *instr)
57 {
58- return !nir_foreach_src(instr, src_is_ssa, NULL);
59+ return !_nir_foreach_src(instr, src_is_ssa, NULL);
60 }
61
62 static bool
63--
642.34.1
65