【发布时间】:2010-11-05 14:47:06
【问题描述】:
我有一个模块可以自动输出(以点格式)用某种汇编语言(我的编译器的 IR)编写的函数。节点是使用“记录”形状打印的基本块。问题是边缘走一条奇怪的路线,例如:
digraph {
node [shape = record];
n0[label="{<name> entry | <body> store i, 0\nstore sum, 0\ngoto test | {<target> target}}"];
n1[label="{<name> test | <body> t2 = load i\nif t4, body, done | {<true> true | <false> false}}"]
n2[label="{<name> body | <body> t5 = load sum\ngoto test | {<target> target}}"];
n3[color=firebrick3, label="{<name> done | <body> t9 = load sum\nret t9}}"];
n0:target:s -> n1:name:n
n1:true:s -> n2:name:n
n1:false:s -> n3:name:n
n2:target:s -> n1:name:n
}
还有一张图片:
我该怎么做才能使从“目标”到“测试”的边放在左侧?
【问题讨论】:
-
您能否具体说明一下您希望图表在路由箭头时一般遵循的标准?例如。您想尽量减少交叉路口吗?
-
我希望从“目标”到“测试”的边缘在左侧布线。现在它看起来真的很奇怪,无法真正理解为什么首先选择这样的路线。
标签: graph graph-theory graphviz