summaryrefslogtreecommitdiffstats
path: root/meta/recipes-graphics/mesa/files/0001-nir-nir_opt_move-fix-ALWAYS_INLINE-compiler-error.patch
blob: 7989843eb44fbe383b4daeaccd38d0edf344df00 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
From da6e47f1717f34c73de388c56ffaf4861a07fdc5 Mon Sep 17 00:00:00 2001
From: t bettler <thomas.bettler@gmail.com>
Date: Sat, 9 Jul 2022 09:28:51 +0000
Subject: [PATCH] nir/nir_opt_move: fix ALWAYS_INLINE compiler error
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Backport merge request to fix mesa compile error when debug build
enabled.

Upstream-Status: Submitted [https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17439]

Signed-off-by: Kai Kang <kai.kang@windriver.com>

MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

fix call to ‘always_inline’ ‘src_is_ssa’

Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/6825
Fixes: f1d20ec67c3f186886b97de94f74484650f8fda1 ("nir/nir_opt_move: handle non-SSA defs ")

---
 src/compiler/nir/nir_inline_helpers.h | 10 ++++++++--
 src/compiler/nir/nir_opt_move.c       |  2 +-
 2 files changed, 9 insertions(+), 3 deletions(-)

diff --git a/src/compiler/nir/nir_inline_helpers.h b/src/compiler/nir/nir_inline_helpers.h
index 125dd8a..ec33f05 100644
--- a/src/compiler/nir/nir_inline_helpers.h
+++ b/src/compiler/nir/nir_inline_helpers.h
@@ -73,8 +73,8 @@ nir_foreach_dest(nir_instr *instr, nir_foreach_dest_cb cb, void *state)
    return _nir_foreach_dest(instr, cb, state);
 }
 
-static inline bool
-nir_foreach_src(nir_instr *instr, nir_foreach_src_cb cb, void *state)
+static ALWAYS_INLINE bool
+_nir_foreach_src(nir_instr *instr, nir_foreach_src_cb cb, void *state)
 {
    switch (instr->type) {
    case nir_instr_type_alu: {
@@ -162,3 +162,9 @@ nir_foreach_src(nir_instr *instr, nir_foreach_src_cb cb, void *state)
    dest_state.cb = cb;
    return _nir_foreach_dest(instr, _nir_visit_dest_indirect, &dest_state);
 }
+
+static inline bool
+nir_foreach_src(nir_instr *instr, nir_foreach_src_cb cb, void *state)
+{
+   return _nir_foreach_src(instr, cb, state);
+}
diff --git a/src/compiler/nir/nir_opt_move.c b/src/compiler/nir/nir_opt_move.c
index 81bcde5..051c3cc 100644
--- a/src/compiler/nir/nir_opt_move.c
+++ b/src/compiler/nir/nir_opt_move.c
@@ -60,7 +60,7 @@ src_is_ssa(nir_src *src, void *state)
 static ALWAYS_INLINE bool
 instr_reads_register(nir_instr *instr)
 {
-   return !nir_foreach_src(instr, src_is_ssa, NULL);
+   return !_nir_foreach_src(instr, src_is_ssa, NULL);
 }
 
 static bool