From 7177a593e63bbb7471acf254d2914a60bb868335 Mon Sep 17 00:00:00 2001 From: Antoine SOULIER Date: Fri, 29 Jul 2022 15:37:39 +0200 Subject: [PATCH] test: Fix ARM assembly tests compiled on target --- src/ltpf_arm.h | 2 +- src/ltpf_neon.h | 3 ++- src/mdct_neon.h | 3 ++- test/arm/simd32.h | 8 +++++++- test/neon/neon.h | 4 +--- 5 files changed, 13 insertions(+), 7 deletions(-) diff --git a/src/ltpf_arm.h b/src/ltpf_arm.h index 631bc12..2c85ee9 100644 --- a/src/ltpf_arm.h +++ b/src/ltpf_arm.h @@ -16,7 +16,7 @@ * ******************************************************************************/ -#if __ARM_FEATURE_SIMD32 +#if __ARM_FEATURE_SIMD32 || defined(TEST_ARM) #ifndef TEST_ARM diff --git a/src/ltpf_neon.h b/src/ltpf_neon.h index cd27c20..eb1e7d8 100644 --- a/src/ltpf_neon.h +++ b/src/ltpf_neon.h @@ -16,7 +16,8 @@ * ******************************************************************************/ -#if __ARM_NEON && __ARM_ARCH_ISA_A64 +#if __ARM_NEON && __ARM_ARCH_ISA_A64 && \ + !defined(TEST_ARM) || defined(TEST_NEON) #ifndef TEST_NEON #include diff --git a/src/mdct_neon.h b/src/mdct_neon.h index 4088212..a970d4a 100644 --- a/src/mdct_neon.h +++ b/src/mdct_neon.h @@ -16,7 +16,8 @@ * ******************************************************************************/ -#if __ARM_NEON && __ARM_ARCH_ISA_A64 +#if __ARM_NEON && __ARM_ARCH_ISA_A64 && \ + !defined(TEST_ARM) || defined(TEST_NEON) #ifndef TEST_NEON #include diff --git a/test/arm/simd32.h b/test/arm/simd32.h index fd17f71..ae002f4 100644 --- a/test/arm/simd32.h +++ b/test/arm/simd32.h @@ -20,8 +20,14 @@ #include +static inline int16x2_t __pkhbt(int16x2_t a, int16x2_t b) +{ + int16x2_t r; + __asm("pkhbt %0, %1, %2" : "=r" (r) : "r" (a), "r" (b)); + return r; +} + #else -#define __ARM_FEATURE_SIMD32 1 #include diff --git a/test/neon/neon.h b/test/neon/neon.h index 4fbf2be..aaca818 100644 --- a/test/neon/neon.h +++ b/test/neon/neon.h @@ -16,13 +16,11 @@ * ******************************************************************************/ -#if __ARM_NEON +#if __ARM_NEON && __ARM_ARCH_ISA_A64 #include #else -#define __ARM_NEON 1 -#define __ARM_ARCH_ISA_A64 1 #include