From: yeom Date: Wed, 3 Nov 2010 00:33:11 +0000 (+0000) Subject: fix: have the proper size of rcrRecord since the size of the rcrRecord array is equal... X-Git-Url: http://plrg.eecs.uci.edu/git/?a=commitdiff_plain;h=4ba1fc6d16da3e9a8f9b01a98b1c4e064ecc626a;p=IRC.git fix: have the proper size of rcrRecord since the size of the rcrRecord array is equal to the size of dynamic coarse conflict var set. --- diff --git a/Robust/src/IR/Flat/BuildCode.java b/Robust/src/IR/Flat/BuildCode.java index ee4560cf..0b86821f 100644 --- a/Robust/src/IR/Flat/BuildCode.java +++ b/Robust/src/IR/Flat/BuildCode.java @@ -4620,8 +4620,8 @@ public class BuildCode { output.println(" }"); } - - if (state.RCR && fsen.getDynamicInVarSet().size() > 0) { + Vector 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) {");