fix: have the proper size of rcrRecord since the size of the rcrRecord array is equal...
authoryeom <yeom>
Wed, 3 Nov 2010 00:33:11 +0000 (00:33 +0000)
committeryeom <yeom>
Wed, 3 Nov 2010 00:33:11 +0000 (00:33 +0000)
Robust/src/IR/Flat/BuildCode.java

index ee4560cf140b7afe9c62489392a5d4f6830c6af0..0b86821ff32511ba41974d03948dac50f85f576c 100644 (file)
@@ -4620,8 +4620,8 @@ public class BuildCode {
       output.println("   }");
     }
     
-    
-    if (state.RCR && fsen.getDynamicInVarSet().size() > 0) {
+    Vector<TempDescriptor> inset=fsen.getInVarsForDynamicCoarseConflictResolution();
+    if (state.RCR && inset.size() > 0) {
       /* Make sure the running SESE is finished */
       output.println("   if (unlikely(runningSESE->rcrstatus!=0)) {");
       output.println("     if(!CAS(&runningSESE->rcrstatus,1,0)) {");
@@ -4632,11 +4632,11 @@ public class BuildCode {
       output.println("     }");
       output.println("   }");
       output.println("{");
-      output.println("  int idx,idx2;");      
-      if (fsen.getDynamicInVarSet().size() == 1) {
+      output.println("  int idx,idx2;");
+      if(inset.size()==1){
         output.println("  idx=0; {");
       } else {
-        output.println("  for(idx=0;idx<" + fsen.getDynamicInVarSet().size() + ";idx++){");
+        output.println("  for(idx=0;idx<" + inset.size() + ";idx++){");
       }
       output.println("    struct rcrRecord *rec=&" + paramsprefix + "->rcrRecords[idx];");
       output.println("    while(rec!=NULL) {");