Update of /cvsroot/pure-data/pd/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv19118
Modified Files: Tag: devel_0_38 s_audio_asio.cpp Log Message: simd runtime detection for clip
Index: s_audio_asio.cpp =================================================================== RCS file: /cvsroot/pure-data/pd/src/Attic/s_audio_asio.cpp,v retrieving revision 1.1.4.10 retrieving revision 1.1.4.11 diff -C2 -d -r1.1.4.10 -r1.1.4.11 *** s_audio_asio.cpp 10 Nov 2004 21:53:02 -0000 1.1.4.10 --- s_audio_asio.cpp 10 Nov 2004 22:37:31 -0000 1.1.4.11 *************** *** 158,163 **** #define MAXNDEV 20
- /* for clipping: */ - extern "C" t_int *clip_perform(t_int *w);
--- 158,161 ---- *************** *** 517,526 **** --- 515,529 ---- }
+ /* for clipping: */ + extern "C" t_int *clip_perform(t_int *w); + #if SIMD_CHKCNT(sys_dacblocksize) inline void copyblock(t_sample *dst,t_sample *src) { copyvec_simd(dst,src,sys_dacblocksize); } inline void zeroblock(t_sample *dst) { zerovec_simd(dst,sys_dacblocksize); } + inline void clipblock(t_int *w) { clip_perf_simd(w); } #else inline void copyblock(t_sample *dst,t_sample *src) { memcpy(dst,src,sys_dacblocksize*sizeof(t_sample)); } inline void zeroblock(t_sample *dst) { memset(dst,0,sys_dacblocksize*sizeof(t_sample)); } + inline void clipblock(t_int *w) { clip_perform(w); } #endif
*************** *** 556,560 **** clipargs[5] = (t_int)DEFDACBLKSIZE; ! clip_perf_simd(clipargs); zeroblock(sp); sp+=sys_dacblocksize; --- 559,563 ---- clipargs[5] = (t_int)DEFDACBLKSIZE; ! clipblock(clipargs); zeroblock(sp); sp+=sys_dacblocksize;