[Stackless-checkins] CVS: slpdev/src/2.3/dev/Stackless/core slp_transfer.c, 1.24, 1.25 stacklesseval.c, 1.153, 1.154

Christian Tismer tismer at centera.de
Thu Jun 3 19:25:19 CEST 2004


Update of /home/cvs/slpdev/src/2.3/dev/Stackless/core
In directory centera.de:/tmp/cvs-serv15407/Stackless/core

Modified Files:
	slp_transfer.c stacklesseval.c 
Log Message:
moved more things into slp_transfer.c, to prevend inlining
and optimization (gcc 3.3.2 problem)

Index: slp_transfer.c
===================================================================
RCS file: /home/cvs/slpdev/src/2.3/dev/Stackless/core/slp_transfer.c,v
retrieving revision 1.24
retrieving revision 1.25
diff -C2 -d -r1.24 -r1.25
*** slp_transfer.c	3 Jun 2004 17:18:06 -0000	1.24
--- slp_transfer.c	3 Jun 2004 17:25:17 -0000	1.25
***************
*** 46,50 ****
  #include "platf/slp_platformselect.h"
  
! /* this function must be here, too, to prevend inlining */
  
  static int
--- 46,70 ----
  #include "platf/slp_platformselect.h"
  
! /* these functions must be here, too, to prevend inlining */
! 
! int
! slp_cstack_save(PyCStackObject *cstprev)
! {
! 	int stsizeb = (cstprev)->ob_size * sizeof(int*);
! 
! 	memcpy((cstprev)->stack, (cstprev)->startaddr - 
! 				 (cstprev)->ob_size, stsizeb);
! 	return stsizeb;
! }
! 
! void
! slp_cstack_restore(PyCStackObject *cst)
! {
! 	cst->tstate->st.nesting_level = cst->nesting_level;
! 	/* mark task as no longer responsible for cstack instance */
! 	cst->task = NULL;
! 	memcpy(cst->startaddr - cst->ob_size, &cst->stack,
! 	       (cst->ob_size) * sizeof(int*));
! }
  
  static int

Index: stacklesseval.c
===================================================================
RCS file: /home/cvs/slpdev/src/2.3/dev/Stackless/core/stacklesseval.c,v
retrieving revision 1.153
retrieving revision 1.154
diff -C2 -d -r1.153 -r1.154
*** stacklesseval.c	3 Jun 2004 17:18:06 -0000	1.153
--- stacklesseval.c	3 Jun 2004 17:25:17 -0000	1.154
***************
*** 125,148 ****
  }
  
! int
! slp_cstack_save(PyCStackObject *cstprev)
! {
! 	int stsizeb = (cstprev)->ob_size * sizeof(int*);
! 
! 	memcpy((cstprev)->stack, (cstprev)->startaddr - 
! 				 (cstprev)->ob_size, stsizeb);
! 	return stsizeb;
! }
! 
! void
! slp_cstack_restore(PyCStackObject *cst)
! {
! 	cst->tstate->st.nesting_level = cst->nesting_level;
! 	/* mark task as no longer responsible for cstack instance */
! 	cst->task = NULL;
! 	memcpy(cst->startaddr - cst->ob_size, &cst->stack,
! 	       (cst->ob_size) * sizeof(int*));
! }
! 
  
  static char cstack_doc[] =
--- 125,129 ----
  }
  
! /* slp_cstack_save/restore moved to slp_transfer */
  
  static char cstack_doc[] =


_______________________________________________
Stackless-checkins mailing list
Stackless-checkins at stackless.com
http://www.stackless.com/mailman/listinfo/stackless-checkins



More information about the Stackless-checkins mailing list