Does this still work for you?

With this change applied (now in master), mesa fails here with:
http://errors.yoctoproject.org/Errors/Details/664881/

and builds fine with DEBUG_BUILD when I revert this.

I've reported the same in upstream MR
https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17439

On Wed, Jul 27, 2022 at 9:30 AM kai <[email protected]> wrote:

> From: Kai Kang <[email protected]>
>
> It fails to compile mesa{,-native} when DEBUG_BUILD is enabled:
>
> ../mesa-22.1.3/src/compiler/nir/nir_inline_helpers.h: In function
> ‘nir_opt_move_block’:
> ../mesa-22.1.3/src/compiler/nir/nir_opt_move.c:55:1: error: inlining
> failed in call to
>   always_inline ‘src_is_ssa’: indirect function call with a yet
> undetermined callee
>  src_is_ssa(nir_src *src, void *state)
>  ^~~~~~~~~~
>
> Backport patch from mesa merge request to fix it.
>
> Signed-off-by: Kai Kang <[email protected]>
> ---
> v2:
> * use patch from mesa merge request
>
>  ...ove-fix-ALWAYS_INLINE-compiler-error.patch | 65 +++++++++++++++++++
>  meta/recipes-graphics/mesa/mesa.inc           |  1 +
>  2 files changed, 66 insertions(+)
>  create mode 100644
> meta/recipes-graphics/mesa/files/0001-nir-nir_opt_move-fix-ALWAYS_INLINE-compiler-error.patch
>
> diff --git
> a/meta/recipes-graphics/mesa/files/0001-nir-nir_opt_move-fix-ALWAYS_INLINE-compiler-error.patch
> b/meta/recipes-graphics/mesa/files/0001-nir-nir_opt_move-fix-ALWAYS_INLINE-compiler-error.patch
> new file mode 100644
> index 0000000000..48fc1e37ff
> --- /dev/null
> +++
> b/meta/recipes-graphics/mesa/files/0001-nir-nir_opt_move-fix-ALWAYS_INLINE-compiler-error.patch
> @@ -0,0 +1,65 @@
> +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 <[email protected]>
> +
> +From c69c6e7a35205557de73734ad4a1f411c8f99926 Mon Sep 17 00:00:00 2001
> +From: t bettler <[email protected]>
> +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
> +
> +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 125dd8a537c..ec33f0509f7 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 81bcde5c436..051c3cc6295 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
> +--
> +2.34.1
> +
> diff --git a/meta/recipes-graphics/mesa/mesa.inc
> b/meta/recipes-graphics/mesa/mesa.inc
> index 710cacb09d..f02ef2dc2b 100644
> --- a/meta/recipes-graphics/mesa/mesa.inc
> +++ b/meta/recipes-graphics/mesa/mesa.inc
> @@ -22,6 +22,7 @@ SRC_URI = "
> https://mesa.freedesktop.org/archive/mesa-${PV}.tar.xz \
>             file://0001-util-format-Check-for-NEON-before-using-it.patch \
>
> file://0001-Revert-egl-wayland-deprecate-drm_handle_format-and-d.patch \
>
> file://0001-swrast_kms-use-swkmsDRI2Extension-instead-of-driDRI2.patch \
> +
>  file://0001-nir-nir_opt_move-fix-ALWAYS_INLINE-compiler-error.patch \
>             "
>
>  SRC_URI[sha256sum] =
> "b98f32ba7aa2a1ff5725fb36eb999c693079f0ca16f70aa2f103e2b6c3f093e3"
> --
> 2.17.1
>
>
> 
>
>
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#169002): 
https://lists.openembedded.org/g/openembedded-core/message/169002
Mute This Topic: https://lists.openembedded.org/mt/92644854/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to