Update of /cvsroot/pure-data/pd/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv23348/src
Modified Files: Tag: devel_0_37 m_simd_sse_vc.c m_simd_sse_vc.h s_inter.c s_path.c t_tkcmd.c Log Message: Windows fixes for recent changes by Tim and Matju
Index: s_inter.c =================================================================== RCS file: /cvsroot/pure-data/pd/src/s_inter.c,v retrieving revision 1.1.1.3.2.21 retrieving revision 1.1.1.3.2.22 diff -C2 -d -r1.1.1.3.2.21 -r1.1.1.3.2.22 *** s_inter.c 25 Oct 2004 15:47:08 -0000 1.1.1.3.2.21 --- s_inter.c 25 Oct 2004 18:18:07 -0000 1.1.1.3.2.22 *************** *** 54,58 ****
#ifndef WISHAPP ! #define WISHAPP "wish85.exe" #endif
--- 54,59 ----
#ifndef WISHAPP ! /* T.Grill - a portable wish.exe should be present in each TCL/TK installation */ ! #define WISHAPP "wish.exe" #endif
*************** *** 589,592 **** --- 590,597 ---- #endif /* THREADED_GUI */
+ + /* T.Grill - fix for Windows */ + #define vsnprintf _vsnprintf + /* matju's (fixed buffer overflow) */ void sys_vgui(char *fmt, ...)
Index: m_simd_sse_vc.h =================================================================== RCS file: /cvsroot/pure-data/pd/src/Attic/m_simd_sse_vc.h,v retrieving revision 1.1.2.9 retrieving revision 1.1.2.10 diff -C2 -d -r1.1.2.9 -r1.1.2.10 *** m_simd_sse_vc.h 14 Oct 2004 11:01:34 -0000 1.1.2.9 --- m_simd_sse_vc.h 25 Oct 2004 18:18:07 -0000 1.1.2.10 *************** *** 39,47 **** t_int *sigrsqrt_perf_simd(t_int *w);
- - /* functions in d_arithmetic.c */ - #define sqr_perf_simd sqr_perf8 /* SIMD not implemented */ - #define over_perf_simd over_perf8 /* SIMD not implemented */ - /* functions in d_math.c */ #define clip_perf_simd clip_perform /* SIMD not implemented */ --- 39,42 ----
Index: m_simd_sse_vc.c =================================================================== RCS file: /cvsroot/pure-data/pd/src/Attic/m_simd_sse_vc.c,v retrieving revision 1.1.2.10 retrieving revision 1.1.2.11 diff -C2 -d -r1.1.2.10 -r1.1.2.11 *** m_simd_sse_vc.c 18 Oct 2004 14:44:44 -0000 1.1.2.10 --- m_simd_sse_vc.c 25 Oct 2004 18:18:07 -0000 1.1.2.11 *************** *** 141,150 **** void testcopyvec_simd(t_float *dst,const t_float *src,int n) { ! testcopyvec_8(dst,src,n) }
void testaddvec_simd(t_float *dst,const t_float *src,int n) { ! testaddvec_8(dst,src,n) }
--- 141,150 ---- void testcopyvec_simd(t_float *dst,const t_float *src,int n) { ! testcopyvec_8(dst,src,n); }
void testaddvec_simd(t_float *dst,const t_float *src,int n) { ! testaddvec_8(dst,src,n); }
*************** *** 473,476 **** --- 473,518 ---- }
+ t_int *sqr_perf_simd(t_int *w) + { + __asm { + mov esi,dword ptr [w] + + mov ebx,dword ptr [esi + 1*TYPE t_int] /* in */ + /* prefetcht0 [ebx] prefetch first cache line */ + mov edx,dword ptr [esi + 2*TYPE t_int] /* out */ + + mov ecx,dword ptr [esi + 3*TYPE t_int] /* n */ + shr ecx,4 + + /* prefetcht0 [ebx+8*TYPE t_float] */ + + loopa: + /* prefetcht0 [ebx+16*TYPE t_float] */ + + movaps xmm0,xmmword ptr[ebx] + mulps xmm0,xmm0 + movaps xmmword ptr[edx],xmm0 + + movaps xmm1,xmmword ptr[ebx+4*TYPE t_float] + mulps xmm1,xmm1 + movaps xmmword ptr[edx+4*TYPE t_float],xmm1 + + /* prefetcht0 [ebx+24*4] */ + + movaps xmm2,xmmword ptr[ebx+8*TYPE t_float] + mulps xmm2,xmm2 + movaps xmmword ptr[edx+8*TYPE t_float],xmm2 + + movaps xmm3,xmmword ptr[ebx+12*TYPE t_float] + mulps xmm3,xmm3 + movaps xmmword ptr[edx+12*TYPE t_float],xmm3 + + add ebx,16*TYPE t_float + add edx,16*TYPE t_float + loop loopa + } + return (w+4); + } + /* no checking for 0 yet!! */ t_int *over_perf_simd(t_int *w)
Index: t_tkcmd.c =================================================================== RCS file: /cvsroot/pure-data/pd/src/t_tkcmd.c,v retrieving revision 1.1.1.4.2.1 retrieving revision 1.1.1.4.2.2 diff -C2 -d -r1.1.1.4.2.1 -r1.1.1.4.2.2 *** t_tkcmd.c 25 Oct 2004 15:16:14 -0000 1.1.1.4.2.1 --- t_tkcmd.c 25 Oct 2004 18:18:07 -0000 1.1.1.4.2.2 *************** *** 296,299 **** --- 296,303 ---- }
+ + /* T.Grill - fix for Windows */ + #define vsnprintf _vsnprintf + /* buffer overflow handler by matju */ void tcl_vmess(char *fmt, ...)
Index: s_path.c =================================================================== RCS file: /cvsroot/pure-data/pd/src/s_path.c,v retrieving revision 1.1.1.2.2.5 retrieving revision 1.1.1.2.2.6 diff -C2 -d -r1.1.1.2.2.5 -r1.1.1.2.2.6 *** s_path.c 25 Oct 2004 15:17:47 -0000 1.1.1.2.2.5 --- s_path.c 25 Oct 2004 18:18:07 -0000 1.1.1.2.2.6 *************** *** 322,330 **** char *rcargv[NUMARGS]; char buf[1000]; rcargv[0] = "."; /* this no longer matters to sys_argparse() */
//support for comments added by Tim Blechmann i=1; - char c[MAXPDSTRING]; while ( (fgets(c,MAXPDSTRING,file)) != 0) { --- 322,331 ---- char *rcargv[NUMARGS]; char buf[1000]; + char c[MAXPDSTRING]; + rcargv[0] = "."; /* this no longer matters to sys_argparse() */
//support for comments added by Tim Blechmann i=1; while ( (fgets(c,MAXPDSTRING,file)) != 0) { *************** *** 377,380 **** --- 378,384 ---- EXTERN char *rcfilename;
+ /* T.Grill - fix for Windows */ + #define snprintf _snprintf + int sys_rcfile(void) {