1
0
mirror of https://github.com/f4exb/sdrangel.git synced 2024-11-26 09:48:45 -05:00

Do not use intrinsics at all for IntHalfbandFilterEO1

This commit is contained in:
f4exb 2018-04-29 10:37:36 +02:00
parent b23d1f6a63
commit 2252dcb06a

View File

@ -26,7 +26,7 @@
#include <cstdlib> #include <cstdlib>
#include "dsp/dsptypes.h" #include "dsp/dsptypes.h"
#include "dsp/hbfiltertraits.h" #include "dsp/hbfiltertraits.h"
#include "dsp/inthalfbandfiltereo1i.h" //#include "dsp/inthalfbandfiltereo1i.h"
#include "export.h" #include "export.h"
template<uint32_t HBFilterOrder> template<uint32_t HBFilterOrder>
@ -681,15 +681,15 @@ protected:
int32_t iAcc = 0; int32_t iAcc = 0;
int32_t qAcc = 0; int32_t qAcc = 0;
#if defined(USE_SSE4_1) && !defined(NO_DSP_SIMD) //#if defined(USE_SSE4_1) && !defined(NO_DSP_SIMD)
IntHalfbandFilterEO1Intrisics<HBFilterOrder>::work( // IntHalfbandFilterEO1Intrisics<HBFilterOrder>::work(
m_ptr, // m_ptr,
m_even, // m_even,
m_odd, // m_odd,
iAcc, // iAcc,
qAcc // qAcc
); // );
#else //#else
int a = m_ptr/2 + m_size; // tip pointer int a = m_ptr/2 + m_size; // tip pointer
int b = m_ptr/2 + 1; // tail pointer int b = m_ptr/2 + 1; // tail pointer
@ -709,7 +709,7 @@ protected:
a -= 1; a -= 1;
b += 1; b += 1;
} }
#endif //#endif
if ((m_ptr % 2) == 0) if ((m_ptr % 2) == 0)
{ {
@ -731,15 +731,15 @@ protected:
int32_t iAcc = 0; int32_t iAcc = 0;
int32_t qAcc = 0; int32_t qAcc = 0;
#if defined(USE_SSE4_1) && !defined(NO_DSP_SIMD) //#if defined(USE_SSE4_1) && !defined(NO_DSP_SIMD)
IntHalfbandFilterEO1Intrisics<HBFilterOrder>::work( // IntHalfbandFilterEO1Intrisics<HBFilterOrder>::work(
m_ptr, // m_ptr,
m_even, // m_even,
m_odd, // m_odd,
iAcc, // iAcc,
qAcc // qAcc
); // );
#else //#else
int a = m_ptr/2 + m_size; // tip pointer int a = m_ptr/2 + m_size; // tip pointer
int b = m_ptr/2 + 1; // tail pointer int b = m_ptr/2 + 1; // tail pointer
@ -759,7 +759,7 @@ protected:
a -= 1; a -= 1;
b += 1; b += 1;
} }
#endif //#endif
if ((m_ptr % 2) == 0) if ((m_ptr % 2) == 0)
{ {
iAcc += ((int32_t)m_odd[0][m_ptr/2 + m_size/2]) << (HBFIRFilterTraits<HBFilterOrder>::hbShift - 1); iAcc += ((int32_t)m_odd[0][m_ptr/2 + m_size/2]) << (HBFIRFilterTraits<HBFilterOrder>::hbShift - 1);