[PD-cvs] pd/src m_simd_sse_vc.c,1.1.2.10,1.1.2.11 m_simd_sse_vc.h,1.1.2.9,1.1.2.10 s_inter.c,1.1.1.3.2.21,1.1.1.3.2.22 s_path.c,1.1.1.2.2.5,1.1.1.2.2.6 t_tkcmd.c,1.1.1.4.2.1,1.1.1.4.2.2

Thomas Grill xovo at users.sourceforge.net
Mon Oct 25 20:18:10 CEST 2004


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)
  {





More information about the Pd-cvs mailing list