commit-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Commit-gnuradio] [gnuradio] 02/04: volk: use literal shuffle parameters


From: git
Subject: [Commit-gnuradio] [gnuradio] 02/04: volk: use literal shuffle parameters in avx 32fc_deinterleavers
Date: Fri, 31 Oct 2014 20:00:17 +0000 (UTC)

This is an automated email from the git hooks/post-receive script.

jcorgan pushed a commit to branch master
in repository gnuradio.

commit f7322ac5682a65edea021041543c6a9d5a7601ba
Author: Nathan West <address@hidden>
Date:   Thu Oct 30 16:48:06 2014 -0500

    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.
---
 volk/kernels/volk/volk_32fc_deinterleave_32f_x2.h   | 6 ++----
 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 6874966..aed7f09 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 f80265d..a590c83 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);
 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]