[Stackless-checkins] CVS: slpdev/src/2.3/sprint/Stackless switch_ppc_macosx.h, 1.11, 1.12
Bob Ippolito
bob at centera.de
Sat Mar 13 14:03:27 CET 2004
- Previous message: [Stackless-checkins] CVS: slpdev/src/2.3/sprint/Stackless/unittests test_watchdog.py, NONE, 1.1
- Next message: [Stackless-checkins] CVS: slpdev/src/2.3/sprint/Stackless channelobject.c, 1.34, 1.35 scheduling.c, 1.81, 1.82 stackless_structs.h, 1.53, 1.54 stacklessmodule.c, 1.145, 1.146 taskletobject.c, 1.87, 1.88
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
Update of /home/cvs/slpdev/src/2.3/sprint/Stackless
In directory centera.de:/tmp/cvs-serv12253
Modified Files:
switch_ppc_macosx.h
Log Message:
Force full PIC prologue to exist for the best compiler in the world:
cc (GCC) 3.3 20030304 (Apple Computer, Inc. build 1636) (-mlongcall)
Index: switch_ppc_macosx.h
===================================================================
RCS file: /home/cvs/slpdev/src/2.3/sprint/Stackless/switch_ppc_macosx.h,v
retrieving revision 1.11
retrieving revision 1.12
diff -C2 -d -r1.11 -r1.12
*** switch_ppc_macosx.h 14 Jan 2004 14:26:54 -0000 1.11
--- switch_ppc_macosx.h 13 Mar 2004 13:03:25 -0000 1.12
***************
*** 36,51 ****
"r21", "r22", "r23", "r24", "r25", "r26", "r27", "r28", "r29", "r31", \
"cr2", "cr3", "cr4"
static int
slp_switch(void)
{
register int *stackref, stsizediff;
! __asm__ volatile ("" : : : REGS_TO_SAVE);
! __asm__ ("mr %0, r1" : "=g" (stackref) : );
{
SLP_SAVE_STATE(stackref, stsizediff);
__asm__ volatile (
! "mr r11, %0\n"
! "add r1, r1, r11\n"
! "add r30, r30, r11\n"
: /* no outputs */
: "g" (stsizediff)
--- 36,59 ----
"r21", "r22", "r23", "r24", "r25", "r26", "r27", "r28", "r29", "r31", \
"cr2", "cr3", "cr4"
+
static int
slp_switch(void)
{
+ static int x = 0;
register int *stackref, stsizediff;
! __asm__ volatile (
! "; asm block 1\n"
! : /* no outputs */
! : "r" (x)
! : REGS_TO_SAVE
! );
! __asm__ ("; asm block 2\n\tmr %0, r1" : "=g" (stackref) : );
{
SLP_SAVE_STATE(stackref, stsizediff);
__asm__ volatile (
! "; asm block 3\n"
! "\tmr r11, %0\n"
! "\tadd r1, r1, r11\n"
! "\tadd r30, r30, r11\n"
: /* no outputs */
: "g" (stsizediff)
***************
*** 55,59 ****
return 0;
}
- __asm__ volatile ("" : : : REGS_TO_SAVE);
}
--- 63,66 ----
_______________________________________________
Stackless-checkins mailing list
Stackless-checkins at stackless.com
http://www.stackless.com/mailman/listinfo/stackless-checkins
- Previous message: [Stackless-checkins] CVS: slpdev/src/2.3/sprint/Stackless/unittests test_watchdog.py, NONE, 1.1
- Next message: [Stackless-checkins] CVS: slpdev/src/2.3/sprint/Stackless channelobject.c, 1.34, 1.35 scheduling.c, 1.81, 1.82 stackless_structs.h, 1.53, 1.54 stacklessmodule.c, 1.145, 1.146 taskletobject.c, 1.87, 1.88
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
More information about the Stackless-checkins
mailing list