[PD-cvs] pd/src kernel.c,1.1.2.87,1.1.2.88

Mathieu Bouchard matju at users.sourceforge.net
Sat Aug 18 09:06:12 CEST 2007


Update of /cvsroot/pure-data/pd/src
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv16608

Modified Files:
      Tag: desiredata
	kernel.c 
Log Message:
added code for measuring elapsed time for all t_gobj


Index: kernel.c
===================================================================
RCS file: /cvsroot/pure-data/pd/src/Attic/kernel.c,v
retrieving revision 1.1.2.87
retrieving revision 1.1.2.88
diff -C2 -d -r1.1.2.87 -r1.1.2.88
*** kernel.c	18 Aug 2007 02:26:28 -0000	1.1.2.87
--- kernel.c	18 Aug 2007 07:06:10 -0000	1.1.2.88
***************
*** 385,391 ****
  t_call pd_stack[STACKSIZE];
  
! #define ENTER(SELECTOR) if(pd_stackn >= STACKSIZE) {stackerror(x); LEAVE; return;} \
! 	pd_stack[pd_stackn].self = x; pd_stack[pd_stackn].s = SELECTOR; pd_stackn++;
! #define LEAVE pd_stackn--;
  
  /* matju's 2007.07.14 inlet-based stack check needs to be implemented in:
--- 385,395 ----
  t_call pd_stack[STACKSIZE];
  
! static inline uint64 rdtsc() {uint64 x; __asm__ volatile (".byte 0x0f, 0x31":"=A"(x)); return x;}
! 
! #define ENTER(SELECTOR) if(pd_stackn >= STACKSIZE) {stackerror(x); return;} \
! 	pd_stack[pd_stackn].self = x; pd_stack[pd_stackn].s = SELECTOR; pd_stackn++; \
! 	uint64 t = rdtsc();
! #define LEAVE pd_stackn--; \
! 	if (x->_class->gobj) ((t_gobj *)x)->dix->elapsed += rdtsc() - t;
  
  /* matju's 2007.07.14 inlet-based stack check needs to be implemented in:





More information about the Pd-cvs mailing list