[PD-cvs] pd/src m_simd.c,NONE,1.1.2.1
Thomas Grill
xovo at users.sourceforge.net
Wed Oct 6 20:31:21 CEST 2004
- Previous message: [PD-cvs] pd/src cvs_changes.txt,1.1.2.6,1.1.2.7 d_array.c,1.1.1.3.2.2,1.1.1.3.2.3 d_ctl.c,1.1.1.3.2.9,1.1.1.3.2.10 d_global.c,1.1.1.2.8.5,1.1.1.2.8.6 d_ugen.c,1.1.1.2.2.6,1.1.1.2.2.7 g_array.c,1.1.1.3.2.10,1.1.1.3.2.11 g_io.c,1.1.1.1.16.3,1.1.1.1.16.4 m_memory.c,1.1.1.2,1.1.1.2.2.1 m_pd.h,1.1.1.4.2.17,1.1.1.4.2.18 m_simd.h,1.1.2.5,1.1.2.6 m_simd_def.h,1.1.2.4,1.1.2.5 m_simd_sse_gcc.h,1.1.2.6,1.1.2.7 m_simd_sse_vc.c,1.1.2.5,1.1.2.6 m_simd_sse_vc.h,1.1.2.5,1.1.2.6 m_simd_ve_gcc.c,1.1.2.3,1.1.2.4 m_simd_ve_gcc.h,1.1.2.4,1.1.2.5 makefile.in,1.1.1.3.2.14,1.1.1.3.2.15
- Next message: [PD-cvs] pd/src configure.in,1.1.1.4.2.20,1.1.1.4.2.21 configure,1.1.1.4.2.20,1.1.1.4.2.21
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
Update of /cvsroot/pure-data/pd/src
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv3278
Added Files:
Tag: devel_0_37
m_simd.c
Log Message:
more functions using SIMD instructions
functions for aligned memory allocation (also public in m_pd.h)
added new file m_simd.c !!!
--- NEW FILE: m_simd.c ---
/*
Implementation of general vectorized functions
added by T.Grill
*/
#include "m_pd.h"
#include "m_simd.h"
void zerovec_8(t_float *dst,int n)
{
for(n >>= 3; n--; dst += 8) {
dst[0] = dst[1] = dst[2] = dst[3] = dst[4] = dst[5] = dst[6] = dst[7] = 0;
}
}
void setvec_8(t_float *dst,t_float v,int n)
{
for(n >>= 3; n--; dst += 8) {
dst[0] = dst[1] = dst[2] = dst[3] = dst[4] = dst[5] = dst[6] = dst[7] = v;
}
}
void copyvec_8(t_float *dst,const t_float *src,int n)
{
for(n >>= 3; n--; src += 8,dst += 8) {
dst[0] = src[0],dst[1] = src[1],dst[2] = src[2],dst[3] = src[3];
dst[4] = src[4],dst[5] = src[5],dst[6] = src[6],dst[7] = src[7];
}
}
void addvec_8(t_float *dst,const t_float *src,int n)
{
for(n >>= 3; n--; src += 8,dst += 8) {
dst[0] += src[0],dst[1] += src[1],dst[2] += src[2],dst[3] += src[3];
dst[4] += src[4],dst[5] += src[5],dst[6] += src[6],dst[7] += src[7];
}
}
void testcopyvec_8(t_float *dst,const t_float *src,int n)
{
while(n--) {
*(dst++) = (PD_BIGORSMALL(*src) ? 0 : *src); src++;
}
}
void testaddvec_8(t_float *dst,const t_float *src,int n)
{
while(n--) {
*(dst++) += (PD_BIGORSMALL(*src) ? 0 : *src); src++;
}
}
- Previous message: [PD-cvs] pd/src cvs_changes.txt,1.1.2.6,1.1.2.7 d_array.c,1.1.1.3.2.2,1.1.1.3.2.3 d_ctl.c,1.1.1.3.2.9,1.1.1.3.2.10 d_global.c,1.1.1.2.8.5,1.1.1.2.8.6 d_ugen.c,1.1.1.2.2.6,1.1.1.2.2.7 g_array.c,1.1.1.3.2.10,1.1.1.3.2.11 g_io.c,1.1.1.1.16.3,1.1.1.1.16.4 m_memory.c,1.1.1.2,1.1.1.2.2.1 m_pd.h,1.1.1.4.2.17,1.1.1.4.2.18 m_simd.h,1.1.2.5,1.1.2.6 m_simd_def.h,1.1.2.4,1.1.2.5 m_simd_sse_gcc.h,1.1.2.6,1.1.2.7 m_simd_sse_vc.c,1.1.2.5,1.1.2.6 m_simd_sse_vc.h,1.1.2.5,1.1.2.6 m_simd_ve_gcc.c,1.1.2.3,1.1.2.4 m_simd_ve_gcc.h,1.1.2.4,1.1.2.5 makefile.in,1.1.1.3.2.14,1.1.1.3.2.15
- Next message: [PD-cvs] pd/src configure.in,1.1.1.4.2.20,1.1.1.4.2.21 configure,1.1.1.4.2.20,1.1.1.4.2.21
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
More information about the Pd-cvs
mailing list