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

SCM Repository

[smlnj] View of /sml/trunk/src/MLRISC/block-placement/block-placement.sml
ViewVC logotype

View of /sml/trunk/src/MLRISC/block-placement/block-placement.sml

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1156 - (download) (annotate)
Thu Mar 21 22:01:11 2002 UTC (17 years, 10 months ago) by leunga
File size: 708 byte(s)

     Bug fixes and improvements to x86 and cfg
functor BlockPlacement 
   (structure CFG : CONTROL_FLOW_GRAPH
    structure Props : INSN_PROPERTIES)

   : BLOCK_PLACEMENT =

struct
  structure CFG = CFG

  structure DefaultPlacement = DefaultBlockPlacement(CFG)

  structure WeightedPlacement = 
     WeightedBlockPlacementFn
	  (structure CFG = CFG 
	   structure InsnProps = Props)

  val placementFlag = MLRiscControl.mkFlag
			  ("weighted-block-placement",
			   "whether MLRISC does weigted block placement")

  fun blockPlacement(cfg as Graph.GRAPH G) =
  let val CFG.INFO{reorder, ...} = #graph_info G
  in  if !placementFlag orelse !reorder
      then WeightedPlacement.blockPlacement cfg
      else DefaultPlacement.blockPlacement cfg
  end
end

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