make simple example work
authorbdemsky <bdemsky>
Tue, 11 Sep 2007 04:29:17 +0000 (04:29 +0000)
committerbdemsky <bdemsky>
Tue, 11 Sep 2007 04:29:17 +0000 (04:29 +0000)
Robust/src/Analysis/Locality/GenerateConversions.java
Robust/src/Analysis/Locality/LocalityAnalysis.java
Robust/src/Analysis/TaskStateAnalysis/SafetyAnalysis.java
Robust/src/IR/Flat/BuildCode.java
Robust/src/Makefile
Robust/src/Runtime/ObjectHash.c

index 74bfe1e7c208b55424f90d394edf84e5ea9ad4a3..d31265e4b94919737e1e9d38a32c4d99cf8c80be 100644 (file)
@@ -51,7 +51,7 @@ public class GenerateConversions {
            Hashtable<TempDescriptor, Integer> nodetemptab=temptab.get(fn);
            
            List<TempDescriptor> reads=Arrays.asList(fn.readsTemps());
-           List<TempDescriptor> writes=Arrays.asList(fn.readsTemps());
+           List<TempDescriptor> writes=Arrays.asList(fn.writesTemps());
 
            if (!isatomic&&fn.kind()==FKind.FlatAtomicExitNode
                &&!nodetoconvs.containsKey(fn))
@@ -78,7 +78,8 @@ public class GenerateConversions {
                            TempNodePair tnp2=new TempNodePair(tnp.getTemp());
                            tnp2.setNode(fn);
                            tempset.add(tnp2);
-                       }
+                       } else
+                           tempset.add(tnp);
                    } else
                        tempset.add(tnp);
                }
@@ -118,7 +119,6 @@ public class GenerateConversions {
                atomictab.get(fn.getPrev(0)).intValue()>0) {
                //sanity check
                assert(fn.kind()==FKind.FlatAtomicExitNode);
-
                //insert calls here...
                Set<TempDescriptor> tempset=nodetoconvs.get(fn);
                for(Iterator<TempDescriptor> tempit=tempset.iterator();tempit.hasNext();) {
index 60695a26d9b258e4b12a1fb6e064ddbaa6e5cdb2..6a6c13cdc82c1cdcf5d9014832a063f0b2a9074d 100644 (file)
@@ -68,8 +68,8 @@ public class LocalityAnalysis {
            if (thistype==null)
                thistype=EITHER;
            lb.setGlobalThis(thistype);
-       } else
-           lb.setGlobalThis(EITHER);//default value
+       }// else
+       // lb.setGlobalThis(EITHER);//default value
        if (discovered.containsKey(lb))
            lb=discovered.get(lb);
        else throw new Error();
@@ -172,7 +172,6 @@ public class LocalityAnalysis {
        }
     }
 
-
     public void computeCallsFlags(MethodDescriptor md, LocalityBinding lb, Hashtable<FlatNode, Hashtable<TempDescriptor, Integer>> temptable, Hashtable<FlatNode, Integer> atomictable) {
        FlatMethod fm=state.getMethodFlat(md);
        HashSet<FlatNode> tovisit=new HashSet<FlatNode>();
@@ -329,8 +328,8 @@ public class LocalityAnalysis {
                if (isnative&&thistype.equals(GLOBAL))
                    throw new Error("Potential call to native method "+md+" on global objects:\n"+currlb.getExplanation());
                lb.setGlobalThis(thistype);
-           } else
-               lb.setGlobalThis(EITHER);//default value
+           } //else
+           //lb.setGlobalThis(EITHER);//default value
                
            //lb is built
            if (!discovered.containsKey(lb)) {
index 1db990f18e2963136dddb43e7f5882efab9ca763..3a999b4a79be428fa25fb144fe9315afa0262b6b 100644 (file)
@@ -186,7 +186,6 @@ public class SafetyAnalysis {
     }
 
     private void printTEST(){
-       
        Enumeration e = safeexecution.keys();
        while (e.hasMoreElements()) {
            ClassDescriptor cdtemp=(ClassDescriptor)e.nextElement();
index 4a8d628bf1ea170a902b4aeb39a58c026081ff95..e636a025e60d0dbbca1c8d7a0ecb489732eda8c6 100644 (file)
@@ -2117,8 +2117,6 @@ public class BuildCode {
         
         headers.println("extern struct classanalysiswrapper * classanalysiswrapperarray[];");
 
-       
-
         Iterator taskit=state.getTaskSymbolTable().getDescriptorsIterator();
         while(taskit.hasNext()) {
             TaskDescriptor td=(TaskDescriptor)taskit.next();
index 1a8c70de159e3bf8e8e120879b867257fa85ec4e..6112b03d3a308d9480d93c04bc4fcb22015e62a3 100644 (file)
@@ -83,7 +83,7 @@ Interface/WebInterface.class
 all: Parse/Sym.class Parse/Parser.class $(CLASSFILES) javadoc
 
 wc:
-       wc Interface/*.java Analysis/*/*.java IR/*.java IR/*/*.java Lex/*.java Util/*.java
+       wc Interface/*.java Analysis/*/*.java IR/*.java IR/*/*.java Lex/*.java Util/*.java ClassLibrary/*.java
 
 wcrun:
        wc Runtime/*.[c,h]
index b3a42abe8197569c9eacb44b3a5ede92c816bf88..cd7ad2dce1386ba4483fa0fa66146ee59443298a 100755 (executable)
@@ -129,15 +129,6 @@ int ObjectHashadd(struct ObjectHash * thisvar,int key, int data, int data2) {
   hashkey = (unsigned int)key % thisvar->size;
   ptr = &thisvar->bucket[hashkey];
 
-  while (*ptr) {
-    if ((*ptr)->key == key) {
-      (*ptr)->data=data;
-      (*ptr)->data2=data2;
-      return 1;
-    }
-    ptr = &((*ptr)->next);
-  }
-
   {
     struct ObjectNode *node=RUNMALLOC(sizeof(struct ObjectNode));
     node->data=data;