forked from openembedded/openembedded-core
-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
mesa: Fix build on ARM systems without Neon
See [1] [1] YoeDistro/yoe-distro#626 Signed-off-by: Khem Raj <[email protected]> Cc: Ross Burton <[email protected]>
- Loading branch information
Showing
2 changed files
with
50 additions
and
0 deletions.
There are no files selected for viewing
49 changes: 49 additions & 0 deletions
49
meta/recipes-graphics/mesa/files/0001-util-format-Check-for-NEON-before-using-it.patch
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,49 @@ | ||
From 4febda271c6bb0dc69ebf573446c6922a1ec35fb Mon Sep 17 00:00:00 2001 | ||
From: Khem Raj <[email protected]> | ||
Date: Thu, 2 Dec 2021 19:57:42 -0800 | ||
Subject: [PATCH] util/format: Check for NEON before using it | ||
|
||
This fixes build on rpi0-w and any other machine which does not have | ||
neon unit and is not used as FPU unit | ||
|
||
Fixes errors e.g. | ||
|
||
In file included from ../mesa-21.3.0/src/util/format/u_format_unpack_neon.c:35: | ||
/mnt/b/yoe/master/build/tmp/work/arm1176jzfshf-vfp-yoe-linux-gnueabi/mesa/2_21.3.0-r0/recipe-sysroot-native/usr/lib/clang/13.0.1/include/arm_neon.h:32:2: error: "NEON support not enabled" | ||
|
||
Upstream-Status: Submitted [https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14032] | ||
Signed-off-by: Khem Raj <[email protected]> | ||
--- | ||
src/util/format/u_format.c | 2 +- | ||
src/util/format/u_format_unpack_neon.c | 2 +- | ||
2 files changed, 2 insertions(+), 2 deletions(-) | ||
|
||
diff --git a/src/util/format/u_format.c b/src/util/format/u_format.c | ||
index 36c5e52008e..f0a00971691 100644 | ||
--- a/src/util/format/u_format.c | ||
+++ b/src/util/format/u_format.c | ||
@@ -1138,7 +1138,7 @@ static void | ||
util_format_unpack_table_init(void) | ||
{ | ||
for (enum pipe_format format = PIPE_FORMAT_NONE; format < PIPE_FORMAT_COUNT; format++) { | ||
-#if (defined(PIPE_ARCH_AARCH64) || defined(PIPE_ARCH_ARM)) && !defined(NO_FORMAT_ASM) && !defined(__SOFTFP__) | ||
+#if (defined(PIPE_ARCH_AARCH64) || (defined(__ARM_NEON) && defined(PIPE_ARCH_ARM))) && !defined(NO_FORMAT_ASM) | ||
const struct util_format_unpack_description *unpack = util_format_unpack_description_neon(format); | ||
if (unpack) { | ||
util_format_unpack_table[format] = unpack; | ||
diff --git a/src/util/format/u_format_unpack_neon.c b/src/util/format/u_format_unpack_neon.c | ||
index a4a5cb1f723..1e4f794a295 100644 | ||
--- a/src/util/format/u_format_unpack_neon.c | ||
+++ b/src/util/format/u_format_unpack_neon.c | ||
@@ -23,7 +23,7 @@ | ||
|
||
#include <u_format.h> | ||
|
||
-#if (defined(PIPE_ARCH_AARCH64) || defined(PIPE_ARCH_ARM)) && !defined(NO_FORMAT_ASM) && !defined(__SOFTFP__) | ||
+#if (defined(PIPE_ARCH_AARCH64) || (defined(__ARM_NEON) && defined(PIPE_ARCH_ARM))) && !defined(NO_FORMAT_ASM) | ||
|
||
/* armhf builds default to vfp, not neon, and refuses to compile neon intrinsics | ||
* unless you tell it "no really". | ||
-- | ||
2.34.1 | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters