checking in changes
authorbdemsky <bdemsky>
Tue, 11 Mar 2008 21:33:58 +0000 (21:33 +0000)
committerbdemsky <bdemsky>
Tue, 11 Mar 2008 21:33:58 +0000 (21:33 +0000)
Robust/src/IR/Flat/BuildFlat.java
Robust/src/IR/Flat/FlatCondBranch.java

index 5bc766fdb97b1e8d94d82c8be8c029ac9369e103..af56b60afb12f051be320e2b35b7c26c0b69c00b 100644 (file)
@@ -282,6 +282,7 @@ public class BuildFlat {
 
        FlatOpNode fcomp=new FlatOpNode(tmpbool,index,temparray[i],new Operation(Operation.LT));
        FlatCondBranch fcb=new FlatCondBranch(tmpbool);
+       fcb.setTrueProb(0.8);
        //is index<temp[i]
        TempDescriptor new_tmp=TempDescriptor.tempFactory("tmp",td);
        FlatNew fn=new FlatNew(td, new_tmp, temparray[i+1], isglobal);
@@ -844,6 +845,7 @@ public class BuildFlat {
            NodePair body=flattenBlockNode(ln.getBody());
            FlatNode begin=initializer.getBegin();
            FlatCondBranch fcb=new FlatCondBranch(cond_temp);
+           fcb.setTrueProb(0.8);
            FlatNop nopend=new FlatNop();
            FlatBackEdge backedge=new FlatBackEdge();
 
@@ -861,6 +863,7 @@ public class BuildFlat {
            NodePair body=flattenBlockNode(ln.getBody());
            FlatNode begin=condition.getBegin();
            FlatCondBranch fcb=new FlatCondBranch(cond_temp);
+           fcb.setTrueProb(0.8);
            FlatNop nopend=new FlatNop();
            FlatBackEdge backedge=new FlatBackEdge();
 
@@ -877,6 +880,7 @@ public class BuildFlat {
            NodePair body=flattenBlockNode(ln.getBody());
            FlatNode begin=body.getBegin();
            FlatCondBranch fcb=new FlatCondBranch(cond_temp);
+           fcb.setTrueProb(0.8);
            FlatNop nopend=new FlatNop();
            FlatBackEdge backedge=new FlatBackEdge();
 
index 86770bc9b4de138f666e133169f101c91f707f5f..2ed442157f670995b83bf625cb00d5eb3feac70a 100644 (file)
@@ -3,11 +3,24 @@ import java.util.Vector;
 
 public class FlatCondBranch extends FlatNode {
     TempDescriptor test_cond;
+    double trueprob=0.5;
 
     public FlatCondBranch(TempDescriptor td) {
        test_cond=td;
     }
 
+    public void setTrueProb(double p) {
+       trueprob=p;
+    }
+
+    public double getTrueProb() {
+       return trueprob;
+    }
+
+    public double getFalseProb() {
+       return 1-trueprob;
+    }
+
     public void addTrueNext(FlatNode n) {
        if (next.size()==0)
            next.setSize(1);