From cf33afdba3ca2f914bca21992c3dc66ce1f9f457 Mon Sep 17 00:00:00 2001 From: Adeel Mujahid <3840695+am11@users.noreply.github.com> Date: Wed, 11 Dec 2024 06:08:44 +0200 Subject: [PATCH 1/6] Fix alpine arm32 build --- arch/arm/neon_intrins.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/arm/neon_intrins.h b/arch/arm/neon_intrins.h index 5dc242d521..efbefd86d0 100644 --- a/arch/arm/neon_intrins.h +++ b/arch/arm/neon_intrins.h @@ -25,7 +25,7 @@ out.val[3] = vqsubq_u16(a.val[3], b); \ } while (0) -# if defined(__clang__) && defined(__arm__) && defined(__ANDROID__) +# if defined(__clang__) && defined(__arm__) /* Clang for 32-bit Android has too strict alignment requirement (:256) for x4 NEON intrinsics */ # undef ARM_NEON_HASLD4 # undef vld1q_u16_x4 From 7c2f84050cb5e8bd7115064a07dada99f589f683 Mon Sep 17 00:00:00 2001 From: Adeel Mujahid <3840695+am11@users.noreply.github.com> Date: Sat, 21 Dec 2024 02:35:43 +0200 Subject: [PATCH 2/6] Address CR feedback --- arch/arm/neon_intrins.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/arch/arm/neon_intrins.h b/arch/arm/neon_intrins.h index efbefd86d0..9a2cc1954b 100644 --- a/arch/arm/neon_intrins.h +++ b/arch/arm/neon_intrins.h @@ -25,8 +25,8 @@ out.val[3] = vqsubq_u16(a.val[3], b); \ } while (0) -# if defined(__clang__) && defined(__arm__) -/* Clang for 32-bit Android has too strict alignment requirement (:256) for x4 NEON intrinsics */ +# if defined(__clang__) && defined(__arm__) && !defined(__GNUC__) +/* Clang for 32-bit Android and Alpine Linux has too strict alignment requirement (:256) for x4 NEON intrinsics */ # undef ARM_NEON_HASLD4 # undef vld1q_u16_x4 # undef vld1q_u8_x4 From d3952eb3263f9d1b31ba4ae37988fb29b1685a65 Mon Sep 17 00:00:00 2001 From: Adeel Mujahid <3840695+am11@users.noreply.github.com> Date: Sat, 21 Dec 2024 02:36:35 +0200 Subject: [PATCH 3/6] . --- arch/arm/neon_intrins.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/arm/neon_intrins.h b/arch/arm/neon_intrins.h index 9a2cc1954b..7695aa7778 100644 --- a/arch/arm/neon_intrins.h +++ b/arch/arm/neon_intrins.h @@ -26,7 +26,7 @@ } while (0) # if defined(__clang__) && defined(__arm__) && !defined(__GNUC__) -/* Clang for 32-bit Android and Alpine Linux has too strict alignment requirement (:256) for x4 NEON intrinsics */ +/* Clang for 32-bit Android and musl-libc have too strict alignment requirement (:256) for x4 NEON intrinsics */ # undef ARM_NEON_HASLD4 # undef vld1q_u16_x4 # undef vld1q_u8_x4 From 4f5ad02df5feda53f4cbb517943ae619682e6b15 Mon Sep 17 00:00:00 2001 From: Adeel Mujahid <3840695+am11@users.noreply.github.com> Date: Sat, 21 Dec 2024 02:37:50 +0200 Subject: [PATCH 4/6] . --- arch/arm/neon_intrins.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/arm/neon_intrins.h b/arch/arm/neon_intrins.h index 7695aa7778..895f251a49 100644 --- a/arch/arm/neon_intrins.h +++ b/arch/arm/neon_intrins.h @@ -25,7 +25,7 @@ out.val[3] = vqsubq_u16(a.val[3], b); \ } while (0) -# if defined(__clang__) && defined(__arm__) && !defined(__GNUC__) +# if defined(__clang__) && defined(__arm__) && defined(__ANDROID__) && !defined(__GNUC__) /* Clang for 32-bit Android and musl-libc have too strict alignment requirement (:256) for x4 NEON intrinsics */ # undef ARM_NEON_HASLD4 # undef vld1q_u16_x4 From ea9e691484ce0d9459841741785877e999705ba8 Mon Sep 17 00:00:00 2001 From: Adeel Mujahid <3840695+am11@users.noreply.github.com> Date: Tue, 14 Jan 2025 16:44:33 +0200 Subject: [PATCH 5/6] Update neon_intrins.h --- arch/arm/neon_intrins.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/arm/neon_intrins.h b/arch/arm/neon_intrins.h index 895f251a49..4adc72b7ee 100644 --- a/arch/arm/neon_intrins.h +++ b/arch/arm/neon_intrins.h @@ -25,7 +25,7 @@ out.val[3] = vqsubq_u16(a.val[3], b); \ } while (0) -# if defined(__clang__) && defined(__arm__) && defined(__ANDROID__) && !defined(__GNUC__) +# if defined(__clang__) && defined(__arm__) && defined(__ANDROID__) && !defined(__GLIBC__) /* Clang for 32-bit Android and musl-libc have too strict alignment requirement (:256) for x4 NEON intrinsics */ # undef ARM_NEON_HASLD4 # undef vld1q_u16_x4 From b7852fb1b98d55192e958ed856c535d6f64ac60f Mon Sep 17 00:00:00 2001 From: Adeel Mujahid <3840695+am11@users.noreply.github.com> Date: Sun, 26 Jan 2025 19:56:10 +0200 Subject: [PATCH 6/6] Update arch/arm/neon_intrins.h --- arch/arm/neon_intrins.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/arm/neon_intrins.h b/arch/arm/neon_intrins.h index 4adc72b7ee..5a08f7bbec 100644 --- a/arch/arm/neon_intrins.h +++ b/arch/arm/neon_intrins.h @@ -25,7 +25,7 @@ out.val[3] = vqsubq_u16(a.val[3], b); \ } while (0) -# if defined(__clang__) && defined(__arm__) && defined(__ANDROID__) && !defined(__GLIBC__) +# if defined(__clang__) && defined(__arm__) && (defined(__ANDROID__) || !defined(__GLIBC__)) /* Clang for 32-bit Android and musl-libc have too strict alignment requirement (:256) for x4 NEON intrinsics */ # undef ARM_NEON_HASLD4 # undef vld1q_u16_x4