recovery flag added
authorjihoonl <jihoonl>
Thu, 8 Oct 2009 23:30:34 +0000 (23:30 +0000)
committerjihoonl <jihoonl>
Thu, 8 Oct 2009 23:30:34 +0000 (23:30 +0000)
Robust/src/Runtime/garbage.c
Robust/src/Runtime/runtime.c
Robust/src/Runtime/runtime.h
Robust/src/Runtime/thread.c
Robust/src/buildscript

index e43dd3cb3e067e0f3cf025cc56530f096b4c3f8c..ddd77783ae045601008496fff5fd54ae6dc05694 100644 (file)
 #include "dmalloc.h"
 #endif
 #ifdef DSTM
-#include "dstm.h"
+#ifdef RECOVERY
+#include <DSTM/interface_recovery/dstm.h>
+#else
+#include <DSTM/interface/dstm.h>
+#endif
 #endif
 #ifdef STM
 #include "tm.h"
index 701b9bea081b586398d0f1125f3b84a842c98543..c4502f55006bb0944df477cfeb5d28f65c11743a 100644 (file)
@@ -8,9 +8,14 @@
 #include "option.h"
 #include "methodheaders.h"
 #ifdef DSTM
-#include "dstm.h"
-#include "prelookup.h"
-#include "prefetch.h"
+#ifdef RECOVERY
+#include "DSTM/interface_recovery/dstm.h"
+#include "DSTM/interface_recovery/prelookup.h"
+#else
+#include "DSTM/interface/dstm.h"
+#include "DSTM/interface/prelookup.h"
+#include "DSTM/interface/prefetch.h"
+#endif
 #endif
 #ifdef STM
 #include "tm.h"
@@ -365,9 +370,9 @@ void CALL02(___System______rangePrefetch____L___Object_____AR_S, struct ___Objec
   return;
 }
 #endif
-#ifdef RECOVERY
-extern void* virtualtable[];
 
+#ifdef D___Task______execution____ 
+extern void* virtualtable[];
 // associated with Task.execution(). finds proper execute method and call it
 void CALL01(___Task______execution____,struct ___Task___ * ___this___)
 {
@@ -384,13 +389,8 @@ void CALL01(___Task______execution____,struct ___Task___ * ___this___)
   ((void(*) (void *))virtualtable[type*MAXCOUNT + EXECUTEMETHOD])(oid);
 #endif
 }
-#else
-void CALL01(___Task______execution____,struct ___Task___ * ___this___)
-{
-  return;
-}
-#endif
 #endif
+#endif // DSTM
 
 /* STM Barrier constructs */
 #ifdef D___Barrier______setBarrier____I
index bea53a5b44479b07d5c6e83a9160993721e94440..b34e9a541812c53fb4924c243e54fae9706d5cc8 100644 (file)
@@ -7,7 +7,11 @@ extern int instructioncount;
 extern int failurecount;
 #endif
 #ifdef DSTM
-#include "dstm.h"
+#ifdef RECOVERY
+#include "DSTM/interface_recovery/dstm.h"
+#else
+#include "DSTM/interface/dstm.h"
+#endif
 #endif
 
 #ifndef INTPTR
index 485271f2e7c06aa10ee160db24e27f644c9976f8..e76b0d9d2b2da6a88d1cf068e08c9537127de2b6 100644 (file)
@@ -8,9 +8,14 @@
 #include <signal.h>
 
 #ifdef DSTM
+#ifdef RECOVERY
+#include <DSTM/interface_recovery/dstm.h>
+#include <DSTM/interface_recovery/llookup.h>
+#else
 #include <DSTM/interface/dstm.h>
 #include <DSTM/interface/llookup.h>
 #endif
+#endif
 
 #ifndef RAW
 #include <stdio.h>
index c3701c4ba79e959a1cccdb8df55bba0833f1ce79..979ade23219d8997c3348653e6f38d048b5e3a0c 100755 (executable)
@@ -73,6 +73,7 @@ echo -help help
 ABORTREADERS=false;
 ROBUSTROOT=~/research/Robust/src
 DSMRUNTIME=$ROBUSTROOT/Runtime/DSTM/interface/
+DSMRECOVERYRUNTIME=$ROBUSTROOT/Runtime/DSTM/interface_recovery/
 REPAIRROOT=~/research/Repair/RepairCompiler/
 CURDIR=`pwd`
 DSMFLAG=false
@@ -676,15 +677,15 @@ fi
 
 if $DSMFLAG
 then
+if $DSMRECOVERY
+then
+EXTRAOPTIONS="$EXTRAOPTIONS -lpthread -DCOMPILER -DDSTM -I$DSMRECOVERYRUNTIME"
+FILES="$FILES $DSMRECOVERYRUNTIME/trans.c $DSMRECOVERYRUNTIME/mcpileq.c $DSMRECOVERYRUNTIME/objstr.c $DSMRECOVERYRUNTIME/dstm.c $DSMRECOVERYRUNTIME/mlookup.c $DSMRECOVERYRUNTIME/clookup.c $DSMRECOVERYRUNTIME/llookup.c $DSMRECOVERYRUNTIME/tlookup.c $DSMRECOVERYRUNTIME/threadnotify.c $DSMRECOVERYRUNTIME/dstmserver.c $DSMRECOVERYRUNTIME/plookup.c $DSMRECOVERYRUNTIME/ip.c $DSMRECOVERYRUNTIME/queue.c $DSMRECOVERYRUNTIME/prelookup.c $DSMRECOVERYRUNTIME/machinepile.c $ROBUSTROOT/Runtime/localobjects.c $ROBUSTROOT/Runtime/thread.c $DSMRECOVERYRUNTIME/sockpool.c $DSMRECOVERYRUNTIME/addUdpEnhance.c $DSMRECOVERYRUNTIME/signal.c $DSMRECOVERYRUNTIME/gCollect.c $DSMRECOVERYRUNTIME/addPrefetchEnhance.c $DSMRECOVERYRUNTIME/dsmlock.c"
+else
 EXTRAOPTIONS="$EXTRAOPTIONS -lpthread -DCOMPILER -DDSTM -I$DSMRUNTIME"
 FILES="$FILES $DSMRUNTIME/trans.c $DSMRUNTIME/mcpileq.c $DSMRUNTIME/objstr.c $DSMRUNTIME/dstm.c $DSMRUNTIME/mlookup.c $DSMRUNTIME/clookup.c $DSMRUNTIME/llookup.c $DSMRUNTIME/threadnotify.c $DSMRUNTIME/dstmserver.c $DSMRUNTIME/plookup.c $DSMRUNTIME/ip.c $DSMRUNTIME/queue.c $DSMRUNTIME/prelookup.c $DSMRUNTIME/machinepile.c $ROBUSTROOT/Runtime/localobjects.c $ROBUSTROOT/Runtime/thread.c $DSMRUNTIME/sockpool.c $DSMRUNTIME/addUdpEnhance.c $DSMRUNTIME/signal.c $DSMRUNTIME/gCollect.c $DSMRUNTIME/addPrefetchEnhance.c $DSMRUNTIME/dsmlock.c $DSMRUNTIME/prefetch.c"
 fi
-
-if $DSMRECOVERY
-then
-FILES="$FILES $DSMRUNTIME/trans.c $DSMRUNTIME/mcpileq.c $DSMRUNTIME/objstr.c $DSMRUNTIME/dstm.c $DSMRUNTIME/mlookup.c $DSMRUNTIME/clookup.c $DSMRUNTIME/llookup.c $DSMRUNTIME/tlookup.c $DSMRUNTIME/threadnotify.c $DSMRUNTIME/dstmserver.c $DSMRUNTIME/plookup.c $DSMRUNTIME/ip.c $DSMRUNTIME/queue.c $DSMRUNTIME/prelookup.c $DSMRUNTIME/machinepile.c $ROBUSTROOT/Runtime/localobjects.c $ROBUSTROOT/Runtime/thread.c $DSMRUNTIME/sockpool.c $DSMRUNTIME/addUdpEnhance.c $DSMRUNTIME/signal.c $DSMRUNTIME/gCollect.c $DSMRUNTIME/addPrefetchEnhance.c $DSMRUNTIME/dsmlock.c $DSMRUNTIME/prefetch.c"
 fi
-
 if $SINGLETM
 then
 EXTRAOPTIONS="$EXTRAOPTIONS -lpthread -DCOMPILER -I$DSMRUNTIME"