filter: adding ssc and fsf versions of filter with associated new Volk kernels.
These routines work and pass QA. They could use some performance work. the FSF is just slightly slower than before; the SCC version is more noticably slower.
Both could benefit, probably, by using SSE2 intrinsics to handle the shorts.
filter: added a ccf Volk dot product to use with ccf filters and used it in fir_filter_ccf.
Produces improved results to previous version.
volk: fixes for 32f dot_prod
Accepts num_points like everything else and handles splitting up numbers itself, not expected to be done externally.
Adds AVX version, both aligned and unaligned.
volk: dot_produce for floats does 16 at a time.
This was done to make this have the same performance as float_dotprod from before. This makes all flavors of the 32f dotprod work the same way.
Because it's expecting the input to have 4x more samples than specified, it's making qa for these fail.
filter: process 4 vectors each time in volk dot_prod to speed up fir filters.
This makes the volk version of the SSE FIR filter the same speed as using the hand-crafted float_dotprod from before.
Removed whitespace and added dtools/bin/remove-whitespace as a tool to do this in the future.
The sed script was provided by Moritz Fischer.
Merge branch 'master' into next
volk: add include for config.h to cc file
volk_32f_s32f_convert_16i_a was also a problem,previously volk_32f_s32f_convert_16i_u was fixed to have config.h.I heard putting config h stuff into public headers was bad practice.Including config.h into the generated cc file should fix this issue from now on.
volk: turning off sse implementation of complex dot product for 32-bit machines until it's fixed.
Also available in: