Newer
Older
import org.jgrapht.io.Attribute;
import org.jgrapht.io.DefaultAttribute;
import tfm.graphs.cfg.CFG;
* An edge of the {@link CFG}, representing the direct
* flow of control. It connects two instructions if, when the source
* is executed, one of the possible next instructions is the destination.
*/
* Represents a non-executable control flow arc, used within the {@link ACFG ACFG}.
* Initially it had the following meaning: connecting a statement with
* the following one as if the source was a {@code nop} command (no operation).
* <br/>
* It is used to improve control dependence, and it should be skipped when
* computing data dependence and other analyses.
*/
public static final class NonExecutable extends ControlFlowArc {
@Override
public Map<String, Attribute> getDotAttributes() {
Map<String, Attribute> map = super.getDotAttributes();
map.put("style", DefaultAttribute.createAttribute("dashed"));
return map;