Home My Page Projects Code Snippets Project Openings SML/NJ
Summary Activity Forums Tracker Lists Tasks Docs Surveys News SCM Files

SCM Repository

[smlnj] Diff of /sml/trunk/src/MLRISC/IR/mlrisc-cfg-util.sml
ViewVC logotype

Diff of /sml/trunk/src/MLRISC/IR/mlrisc-cfg-util.sml

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1083, Thu Feb 21 18:52:10 2002 UTC revision 1084, Thu Feb 21 18:52:44 2002 UTC
# Line 48  Line 48 
48      *=====================================================================*)      *=====================================================================*)
49     fun isMerge (G.GRAPH cfg) node = length(#in_edges cfg node) > 1     fun isMerge (G.GRAPH cfg) node = length(#in_edges cfg node) > 1
50     fun isSplit (G.GRAPH cfg) node = length(#out_edges cfg node) > 1     fun isSplit (G.GRAPH cfg) node = length(#out_edges cfg node) > 1
51    (*
52     fun hasSideExits (G.GRAPH cfg) node =     fun hasSideExits (G.GRAPH cfg) node =
53           List.exists (fn (_,_,CFG.EDGE{k=CFG.SIDEEXIT _,...}) => true           List.exists (fn (_,_,CFG.EDGE{k=CFG.SIDEEXIT _,...}) => true
54                         | _ => false) (#out_edges cfg node)                         | _ => false) (#out_edges cfg node)
55    *)
56       fun hasSideExits _ _ = false
57     fun isCriticalEdge CFG (_,_,CFG.EDGE{k=CFG.ENTRY,...}) = false     fun isCriticalEdge CFG (_,_,CFG.EDGE{k=CFG.ENTRY,...}) = false
58       | isCriticalEdge CFG (_,_,CFG.EDGE{k=CFG.EXIT,...}) = false       | isCriticalEdge CFG (_,_,CFG.EDGE{k=CFG.EXIT,...}) = false
59       | isCriticalEdge CFG (i,j,_) = isSplit CFG i andalso isMerge CFG j       | isCriticalEdge CFG (i,j,_) = isSplit CFG i andalso isMerge CFG j

Legend:
Removed from v.1083  
changed lines
  Added in v.1084

root@smlnj-gforge.cs.uchicago.edu
ViewVC Help
Powered by ViewVC 1.0.0