diff --git a/openair1/PHY/CODING/3gpplte_sse.c b/openair1/PHY/CODING/3gpplte_sse.c index ac4a1ae3536cb61491f068499902102c72e2d13c..50c084d2a8bf5e8b5ca38a616158fc624e5d853b 100755 --- a/openair1/PHY/CODING/3gpplte_sse.c +++ b/openair1/PHY/CODING/3gpplte_sse.c @@ -598,7 +598,7 @@ void threegpplte_turbo_encoder(unsigned char *input, #elif defined(__arm__) *ptr_output++ = vadd_u8(all_treillis[state0][cur_s1].systematic_andp1_64[code_rate], - all_treillis[state0][cur_s1].parity1_64[code_rate]); + all_treillis[state0][cur_s1].parity2_64[code_rate]); #endif } diff --git a/openair1/PHY/TOOLS/lte_dfts.c b/openair1/PHY/TOOLS/lte_dfts.c index 033cb143fc7bb21f34f2f0a53e4bd4dc9b140725..1bdcb3ad6022605bcf88564e87044d08e6664f52 100644 --- a/openair1/PHY/TOOLS/lte_dfts.c +++ b/openair1/PHY/TOOLS/lte_dfts.c @@ -635,7 +635,7 @@ static inline void bfly2_tw1(int16x8_t *x0, int16x8_t *x1, int16x8_t *y0, int16x } #endif - + #if defined(__x86_64__) || defined(__i386__) @@ -689,9 +689,9 @@ static inline void bfly2_16_256(__m256i *x0, __m256i *x1, __m256i *y0, __m256i * #elif defined(__arm__) -static inline void bfly2_tw1(int16x8_t *x0, int16x8_t *x1, int16x8_t *y0, int16x8_t *y1)__attribute__((always_inline)); +static inline void bfly2_16(int16x8_t *x0, int16x8_t *x1, int16x8_t *y0, int16x8_t *y1, int16x8_t *tw, int16x8_t *twb)__attribute__((always_inline)); -static inline void bfly2_tw1(int16x8_t *x0, int16x8_t *x1, int16x8_t *y0, int16x8_t *y1) +static inline void bfly2_16(int16x8_t *x0, int16x8_t *x1, int16x8_t *y0, int16x8_t *y1, int16x8_t *tw, int16x8_t *twb) { *y0 = vqaddq_s16(*x0,*x1); @@ -2633,6 +2633,7 @@ int16_t tw64crep[192] __attribute__((aligned(32))) = { #define shiftright_int16_simd256(a,shift) _mm256_srai_epi16(a,shift) #define set1_int16_simd256(a) _mm256_set1_epi16(a); #define mulhi_int16_simd256(a,b) _mm256_slli_epi16(_mm256_mulhi_epi16(a,b),1); +#endif #elif defined(__arm__) #define simd_q15_t int16x8_t @@ -2643,7 +2644,6 @@ int16_t tw64crep[192] __attribute__((aligned(32))) = { #define _mm_empty() #define _m_empty() -#endif #endif #ifndef __AVX2__ diff --git a/targets/ARCH/USRP/USERSPACE/LIB/usrp_lib.cpp b/targets/ARCH/USRP/USERSPACE/LIB/usrp_lib.cpp index 5173fc465352822d871708a69fd25fe39c27038a..72e79b44de53eaa0813bc5a2baaddea1d0ae8efe 100644 --- a/targets/ARCH/USRP/USERSPACE/LIB/usrp_lib.cpp +++ b/targets/ARCH/USRP/USERSPACE/LIB/usrp_lib.cpp @@ -55,6 +55,10 @@ # include <immintrin.h> #endif +#ifdef __arm__ +# include <arm_neon.h> +#endif + /** @addtogroup _USRP_PHY_RF_INTERFACE_ * @{ */