From e76aaf68f4061e62621553bbfd12ed9cd8d426bf Mon Sep 17 00:00:00 2001
From: bdemsky <bdemsky>
Date: Fri, 30 Jan 2009 20:59:57 +0000
Subject: [PATCH] hack to avoid copying transaction local objects

---
 Robust/src/IR/Flat/BuildCode.java | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/Robust/src/IR/Flat/BuildCode.java b/Robust/src/IR/Flat/BuildCode.java
index 14d135dd..44c0a6e8 100644
--- a/Robust/src/IR/Flat/BuildCode.java
+++ b/Robust/src/IR/Flat/BuildCode.java
@@ -2197,7 +2197,10 @@ public class BuildCode {
     }
     if (state.DSM && locality.getAtomic(lb).get(fn).intValue()>0&&!fn.isGlobal()) {
       String revertptr=generateTemp(fm, reverttable.get(lb),lb);
-      output.println("trans->revertlist="+revertptr+";");
+      String dst=generateTemp(fm,fn.getDst(),lb);
+      output.println(dst+"->___localcopy___=1;");
+      output.println(dst+"->"+nextobjstr+"="+revertptr+";");
+      output.println("trans->revertlist=(struct ___Object___ *)"+dst+";");
     }
   }
 
-- 
2.34.1