From: bdemsky Date: Thu, 7 Aug 2008 21:57:26 +0000 (+0000) Subject: changes to support gc with dstm X-Git-Tag: preEdgeChange~11 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=3b418badd4cd73b2efda4f13449e8266185867c5;p=IRC.git changes to support gc with dstm --- diff --git a/Robust/src/Runtime/socket.c b/Robust/src/Runtime/socket.c index be44968e..43fb285b 100644 --- a/Robust/src/Runtime/socket.c +++ b/Robust/src/Runtime/socket.c @@ -25,7 +25,7 @@ int CALL24(___Socket______nativeConnect____I__AR_B_I, int ___fd___, int ___port_ sin.sin_family= AF_INET; sin.sin_port=htons(___port___); sin.sin_addr.s_addr=htonl(*(int *)(((char *)&VAR(___address___)->___length___)+sizeof(int))); -#ifdef THREADS +#if defined(THREADS)||define(DSTM) #ifdef PRECISE_GC struct listitem *tmp=stopforgc((struct garbagelist *)___params___); #endif @@ -33,7 +33,7 @@ int CALL24(___Socket______nativeConnect____I__AR_B_I, int ___fd___, int ___port_ do { rc = connect(___fd___, (struct sockaddr *) &sin, sizeof(sin)); } while (rc<0 && errno==EINTR); /* repeat if interrupted */ -#ifdef THREADS +#if defined(THREADS)||define(DSTM) #ifdef PRECISE_GC restartaftergc(tmp); #endif @@ -289,13 +289,13 @@ int CALL02(___ServerSocket______nativeaccept____L___Socket___,struct ___ServerSo unsigned int sinlen=sizeof(sin); int fd=VAR(___this___)->___fd___; int newfd; -#ifdef THREADS +#if defined(THREADS)||define(DSTM) #ifdef PRECISE_GC struct listitem *tmp=stopforgc((struct garbagelist *)___params___); #endif #endif newfd=accept(fd, (struct sockaddr *)&sin, &sinlen); -#ifdef THREADS +#if defined(THREADS)||define(DSTM) #ifdef PRECISE_GC restartaftergc(tmp); #endif @@ -363,7 +363,7 @@ int CALL02(___Socket______nativeRead_____AR_B, struct ___Socket___ * ___this___, char * charstr=malloc(length); -#ifdef THREADS +#if defined(THREADS)||define(DSTM) #ifdef PRECISE_GC struct listitem *tmp=stopforgc((struct garbagelist *)___params___); #endif @@ -374,7 +374,7 @@ int CALL02(___Socket______nativeRead_____AR_B, struct ___Socket___ * ___this___, do { byteread=read(fd, charstr, length); } while(byteread==-1&&errno==EINTR); -#ifdef THREADS +#if defined(THREADS)||define(DSTM) #ifdef PRECISE_GC restartaftergc(tmp); #endif