SCM Repository
[diderot] Diff of /branches/pure-cfg/src/compiler/IL/ssa-pp-fn.sml
Diff of /branches/pure-cfg/src/compiler/IL/ssa-pp-fn.sml
Parent Directory
|
Revision Log
|
Patch
56 |
|
|
57 |
fun labelOf (IL.ND{id, ...}) = "L"^Stamp.toString id |
fun labelOf (IL.ND{id, ...}) = "L"^Stamp.toString id |
58 |
|
|
59 |
fun ppCFG (out, IL.CFG{entry, exit}) = let |
fun ppCFG (out, cfg as IL.CFG{entry, exit}) = let |
60 |
fun goto (out, nd) = if (List.length(IL.Node.preds nd) > 1) |
fun goto (out, nd) = if (List.length(IL.Node.preds nd) > 1) |
61 |
then ( |
then ( |
62 |
prln(incIndent out, ["goto ", IL.Node.toString nd, "\n"]); |
prln(incIndent out, ["goto ", IL.Node.toString nd, "\n"]); |
134 |
(* end case *)) |
(* end case *)) |
135 |
end |
end |
136 |
in |
in |
137 |
ppNd (out, false, entry) |
ppNd (out, false, entry); |
138 |
|
(* clear marks *) |
139 |
|
IL.CFG.apply clear cfg |
140 |
end |
end |
141 |
|
|
142 |
fun ppInitially (out, IL.Initially{isArray, rangeInit, iters, create}) = let |
fun ppInitially (out, IL.Initially{isArray, rangeInit, iters, create}) = let |
|
Legend:
Removed from v.648 |
|
changed lines |
|
Added in v.649 |
|
|