// addTypeLocation(on.getRight().getType(), rightLoc);
}
- System.out.println("\n# OP NODE=" + on.printNode(0));
- // System.out.println("# left loc=" + leftLoc + " from " +
- // on.getLeft().getClass());
+ // System.out.println("# left loc=" + leftLoc + " from " + on.getLeft().getClass());
// if (on.getRight() != null) {
- // System.out.println("# right loc=" + rightLoc + " from " +
- // on.getRight().getClass());
+ // System.out.println("# right loc=" + rightLoc + " from " + on.getRight().getClass());
// }
Operation op = on.getOp();
// composite location
int maxTupleSize = 0;
+ int minTupleSize = 0;
CompositeLocation maxCompLoc = null;
Location prevPriorityLoc = null;
maxTupleSize = compLoc.getSize();
maxCompLoc = compLoc;
}
+ if (minTupleSize == 0 || compLoc.getSize() < minTupleSize) {
+ minTupleSize = compLoc.getSize();
+ }
Location priorityLoc = compLoc.get(0);
String priorityLocId = priorityLoc.getLocIdentifier();
priorityLocIdentifierSet.add(priorityLocId);
}
SSJavaLattice<String> locOrder = getLatticeByDescriptor(priorityDescriptor);
- System.out.println("priorityDescriptor=" + priorityDescriptor);
- System.out.println("GLB INPUT=" + priorityLocIdentifierSet);
String glbOfPriorityLoc = locOrder.getGLB(priorityLocIdentifierSet);
- System.out.println("GLB OUTPUT="+glbOfPriorityLoc);
glbCompLoc.addLocation(new Location(priorityDescriptor, glbOfPriorityLoc));
Set<CompositeLocation> compSet = locId2CompLocSet.get(glbOfPriorityLoc);
// in this case, do not take care about delta
// CompositeLocation inputComp = inputSet.iterator().next();
- for (int i = 1; i < maxTupleSize; i++) {
+ // for (int i = 1; i < maxTupleSize; i++) {
+ for (int i = 1; i < minTupleSize; i++) {
glbCompLoc.addLocation(Location.createTopLocation(maxCompLoc.get(i).getDescriptor()));
}
} else {