From: bdemsky Date: Wed, 17 May 2006 18:33:54 +0000 (+0000) Subject: Changes to generate TaskExit X-Git-Tag: preEdgeChange~879 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=52d827ab17801553e94d790a9e8495c918e6e28d;p=IRC.git Changes to generate TaskExit --- diff --git a/Robust/src/IR/Flat/BuildFlat.java b/Robust/src/IR/Flat/BuildFlat.java index 7cead58f..f2f95aa4 100644 --- a/Robust/src/IR/Flat/BuildFlat.java +++ b/Robust/src/IR/Flat/BuildFlat.java @@ -33,7 +33,7 @@ public class BuildFlat { private void flattenTask(TaskDescriptor td) { BlockNode bn=state.getMethodBody(td); FlatNode fn=flattenBlockNode(bn).getBegin(); - FlatFlagActionNode ffan=new FlatFlagActionNode(); + FlatFlagActionNode ffan=new FlatFlagActionNode(false); ffan.addNext(fn); FlatMethod fm=new FlatMethod(td, ffan); @@ -554,10 +554,11 @@ public class BuildFlat { } private NodePair flattenTaskExitNode(TaskExitNode ten) { - FlatTaskExitNode tenflat=new FlatTaskExitNode(); - return new NodePair(tenflat,tenflat); + FlatFlagActionNode ffan=new FlatFlagActionNode(true); + updateFlagActionNode(ffan, ten.getFlagEffects()); + return new NodePair(ffan, ffan); } - + private NodePair flattenSubBlockNode(SubBlockNode sbn) { return flattenBlockNode(sbn.getBlockNode()); } diff --git a/Robust/src/IR/Flat/FKind.java b/Robust/src/IR/Flat/FKind.java index b15035c7..304d7eed 100644 --- a/Robust/src/IR/Flat/FKind.java +++ b/Robust/src/IR/Flat/FKind.java @@ -13,6 +13,5 @@ public class FKind { public static final int FlatNop=10; public static final int FlatSetElementNode=11; public static final int FlatElementNode=12; - public static final int FlatTaskExitNode=13; - public static final int FlatFlagActionNode=14; + public static final int FlatFlagActionNode=13; } diff --git a/Robust/src/IR/Flat/FlatFlagActionNode.java b/Robust/src/IR/Flat/FlatFlagActionNode.java index 39994ac2..a6bff51f 100644 --- a/Robust/src/IR/Flat/FlatFlagActionNode.java +++ b/Robust/src/IR/Flat/FlatFlagActionNode.java @@ -6,9 +6,11 @@ import java.util.Iterator; public class FlatFlagActionNode extends FlatNode { Hashtable tempflagpairs; + boolean taskexit; - public FlatFlagActionNode() { + public FlatFlagActionNode(boolean taskexit) { tempflagpairs=new Hashtable(); + this.taskexit=taskexit; } public void addFlagAction(TempDescriptor td, FlagDescriptor fd, boolean status) { diff --git a/Robust/src/IR/Flat/FlatTaskExitNode.java b/Robust/src/IR/Flat/FlatTaskExitNode.java deleted file mode 100644 index fee0f33d..00000000 --- a/Robust/src/IR/Flat/FlatTaskExitNode.java +++ /dev/null @@ -1,10 +0,0 @@ -package IR.Flat; - -public class FlatTaskExitNode extends FlatNode { - public FlatTaskExitNode() { - } - - public int kind() { - return FKind.FlatTaskExitNode; - } -}