From 066aa3157b79afc5f7454429529bcb2566be6fd9 Mon Sep 17 00:00:00 2001 From: adash Date: Sat, 13 Mar 2010 02:08:34 +0000 Subject: [PATCH] more changes --- Robust/src/ClassLibrary/JavaDSM/Thread.java | 3 +++ Robust/src/ClassLibrary/JavaThread/Object.java | 2 +- Robust/src/IR/Flat/BuildCode.java | 11 +++++++---- Robust/src/Runtime/runtime.c | 6 +++--- 4 files changed, 14 insertions(+), 8 deletions(-) diff --git a/Robust/src/ClassLibrary/JavaDSM/Thread.java b/Robust/src/ClassLibrary/JavaDSM/Thread.java index e1db40a4..c1902293 100644 --- a/Robust/src/ClassLibrary/JavaDSM/Thread.java +++ b/Robust/src/ClassLibrary/JavaDSM/Thread.java @@ -33,6 +33,9 @@ public class Thread { { if(nativeGetStatus(mid)==1) return 1; + //TODO:check if this is safe to add only for the DSM without the recovery version + if(nativeGetStatus(mid)==0) + return 1; else return -1; diff --git a/Robust/src/ClassLibrary/JavaThread/Object.java b/Robust/src/ClassLibrary/JavaThread/Object.java index a3bc22d9..b3780488 100644 --- a/Robust/src/ClassLibrary/JavaThread/Object.java +++ b/Robust/src/ClassLibrary/JavaThread/Object.java @@ -7,7 +7,7 @@ public class Object { private Object prevlockobject; // temporary extra unused int filed to align objects for Java - int wkhqwemnbmwnb; + //int wkhqwemnbmwnb; public int hashCode() { if (!cachedHash) { diff --git a/Robust/src/IR/Flat/BuildCode.java b/Robust/src/IR/Flat/BuildCode.java index 2d4231e6..2ec13056 100644 --- a/Robust/src/IR/Flat/BuildCode.java +++ b/Robust/src/IR/Flat/BuildCode.java @@ -314,10 +314,12 @@ public class BuildCode { } if (state.DSM) { - if (state.DSMRECOVERYSTATS) + if (state.DSMRECOVERYSTATS) { + outmethod.println("#ifdef RECOVERYSTATS \n"); outmethod.println("handle();\n"); - else { - outmethod.println("#ifdef TRANSSTATS \n"); + outmethod.println("#endif\n"); + } else { + outmethod.println("#if defined(TRANSSTATS) || defined(RECOVERYSTATS) \n"); outmethod.println("handle();\n"); outmethod.println("#endif\n"); } @@ -390,7 +392,8 @@ public class BuildCode { } if (state.DSM||state.SINGLETM) { - outmethod.println("#ifdef TRANSSTATS \n"); + //outmethod.println("#if defined(TRANSSTATS) || defined(RECOVERYSTATS) \n"); + outmethod.println("#if defined(TRANSSTATS) \n"); outmethod.println("printf(\"****** Transaction Stats ******\\n\");"); outmethod.println("printf(\"numTransCommit= %d\\n\", numTransCommit);"); outmethod.println("printf(\"numTransAbort= %d\\n\", numTransAbort);"); diff --git a/Robust/src/Runtime/runtime.c b/Robust/src/Runtime/runtime.c index 9e939227..8d1016c0 100644 --- a/Robust/src/Runtime/runtime.c +++ b/Robust/src/Runtime/runtime.c @@ -350,10 +350,9 @@ void CALL01(___System______printString____L___String___,struct ___String___ * __ short sc=((short *)(((char *)&chararray->___length___)+sizeof(int)))[i+offset]; putchar(sc); } - -#ifdef RECOVERYSTATS +//#ifdef RECOVERYSTATS fflush(stdout); -#endif +//#endif } #ifdef D___RecoveryStat______printRecoveryStat____ @@ -364,6 +363,7 @@ void CALL00(___RecoveryStat______printRecoveryStat____) { #else void CALL00(___RecoveryStat______printRecoveryStat____) { printf("No Stat\n"); + fflush(stdout); } #endif #endif -- 2.34.1