diff options
author | Nathan West <nathan.west@okstate.edu> | 2014-10-30 16:48:06 -0500 |
---|---|---|
committer | Johnathan Corgan <johnathan@corganlabs.com> | 2014-10-31 12:28:13 -0700 |
commit | f7322ac5682a65edea021041543c6a9d5a7601ba (patch) | |
tree | d0ffac2434465a9c183ec19a5da63abed1a653cd /volk | |
parent | 4869607eb840318595edda85ca20b872579b27e3 (diff) |
volk: use literal shuffle parameters in avx 32fc_deinterleavers
Using anything put the literal value is a non-standard extension
that clang does not support.
Diffstat (limited to 'volk')
-rw-r--r-- | volk/kernels/volk/volk_32fc_deinterleave_32f_x2.h | 6 | ||||
-rw-r--r-- | volk/kernels/volk/volk_32fc_deinterleave_imag_32f.h | 4 |
2 files changed, 3 insertions, 7 deletions
diff --git a/volk/kernels/volk/volk_32fc_deinterleave_32f_x2.h b/volk/kernels/volk/volk_32fc_deinterleave_32f_x2.h index 68749665da..aed7f097b8 100644 --- a/volk/kernels/volk/volk_32fc_deinterleave_32f_x2.h +++ b/volk/kernels/volk/volk_32fc_deinterleave_32f_x2.h @@ -42,8 +42,6 @@ static inline void volk_32fc_deinterleave_32f_x2_a_avx(float* iBuffer, float* qB unsigned int number = 0; // Mask for real and imaginary parts - int realMask = 0x88; - int imagMask = 0xdd; const unsigned int eighthPoints = num_points / 8; __m256 cplxValue1, cplxValue2, complex1, complex2, iValue, qValue; for(;number < eighthPoints; number++){ @@ -58,9 +56,9 @@ static inline void volk_32fc_deinterleave_32f_x2_a_avx(float* iBuffer, float* qB complex2 = _mm256_permute2f128_ps(cplxValue1, cplxValue2, 0x31); // Arrange in i1i2i3i4 format - iValue = _mm256_shuffle_ps(complex1, complex2, realMask); + iValue = _mm256_shuffle_ps(complex1, complex2, 0x88); // Arrange in q1q2q3q4 format - qValue = _mm256_shuffle_ps(complex1, complex2, imagMask); + qValue = _mm256_shuffle_ps(complex1, complex2, 0xdd); _mm256_store_ps(iBufferPtr, iValue); _mm256_store_ps(qBufferPtr, qValue); diff --git a/volk/kernels/volk/volk_32fc_deinterleave_imag_32f.h b/volk/kernels/volk/volk_32fc_deinterleave_imag_32f.h index f80265decd..a590c83d7a 100644 --- a/volk/kernels/volk/volk_32fc_deinterleave_imag_32f.h +++ b/volk/kernels/volk/volk_32fc_deinterleave_imag_32f.h @@ -37,7 +37,6 @@ static inline void volk_32fc_deinterleave_imag_32f_a_avx(float* qBuffer, const lv_32fc_t* complexVector, unsigned int num_points){ unsigned int number = 0; const unsigned int eighthPoints = num_points / 8; - int imagMask = 0xdd; const float* complexVectorPtr = (const float*)complexVector; float* qBufferPtr = qBuffer; @@ -54,8 +53,7 @@ static inline void volk_32fc_deinterleave_imag_32f_a_avx(float* qBuffer, const l complex2 = _mm256_permute2f128_ps(cplxValue1, cplxValue2, 0x31); // Arrange in q1q2q3q4 format - qValue = _mm256_shuffle_ps(complex1, complex2, imagMask); - //iValue = _mm_shuffle_ps(cplxValue1, cplxValue2, _MM_SHUFFLE(3,1,3,1)); + qValue = _mm256_shuffle_ps(complex1, complex2, 0xdd); _mm256_store_ps(qBufferPtr, qValue); |