packages/hoopl.git
9 years agoExporting the ShapeT GADT and the Shape type class. shapeclassifier
Joao Dias [Tue, 8 Jun 2010 19:34:28 +0000 (15:34 -0400)] 
Exporting the ShapeT GADT and the Shape type class.

9 years agoMade the non-poly case the default for shallowFwdRw, which allowed me to kill the...
Joao Dias [Mon, 7 Jun 2010 19:40:36 +0000 (15:40 -0400)] 
Made the non-poly case the default for shallowFwdRw, which allowed me to kill the lifting function from triple to poly. Not sure it's a win in the long run, but it cuts code for now, with no additional cognitive burden.

9 years agoA few comments about shape classification and the code. I still have some functions...
Joao Dias [Mon, 7 Jun 2010 19:28:00 +0000 (15:28 -0400)] 
A few comments about shape classification and the code. I still have some functions that have the same bodies but different types, and I don't know how to make the duplication disappear.

9 years agoQuick hack at using shape classification to simplify combinators.
Joao Dias [Mon, 7 Jun 2010 19:16:15 +0000 (15:16 -0400)] 
Quick hack at using shape classification to simplify combinators.

9 years agoduplicate John's fold using the Scott fold
Norman Ramsey [Wed, 19 May 2010 02:23:49 +0000 (22:23 -0400)] 
duplicate John's fold using the Scott fold

9 years agoMerge branch 'three-eight' of linux.cs.tufts.edu:/r/c--/papers/dfopt into three-eight
Norman Ramsey [Wed, 19 May 2010 01:48:38 +0000 (21:48 -0400)] 
Merge branch 'three-eight' of linux.cs.tufts.edu:/r/c--/papers/dfopt into three-eight

9 years agoscottFoldBlock is much nicer!
Norman Ramsey [Wed, 19 May 2010 01:48:20 +0000 (21:48 -0400)] 
scottFoldBlock is much nicer!

9 years agocomment mysterious newtypes
Norman Ramsey [Wed, 19 May 2010 01:05:26 +0000 (21:05 -0400)] 
comment mysterious newtypes

9 years agoclean up the grotesque block fold a little
Norman Ramsey [Wed, 19 May 2010 01:03:16 +0000 (21:03 -0400)] 
clean up the grotesque block fold a little

9 years agosimplified fold by eliminating Trips datatype
Norman Ramsey [Wed, 19 May 2010 00:52:24 +0000 (20:52 -0400)] 
simplified fold by eliminating Trips datatype

9 years agohorrible, horrible experiments with folds
Norman Ramsey [Wed, 19 May 2010 00:50:14 +0000 (20:50 -0400)] 
horrible, horrible experiments with folds

9 years agoAdding comment to blockToNodeList.
Milan Straka [Tue, 18 May 2010 21:12:28 +0000 (22:12 +0100)] 
Adding comment to blockToNodeList.

Why it cannot be expressed by current foldBlockNodesB.

9 years agoblockMapNodes and BlockMapNodes3 get their properly general types
Norman Ramsey [Mon, 17 May 2010 21:23:23 +0000 (17:23 -0400)] 
blockMapNodes and BlockMapNodes3 get their properly general types

9 years agodeprecated more suspicious-looking functions
Norman Ramsey [Mon, 17 May 2010 21:21:19 +0000 (17:21 -0400)] 
deprecated more suspicious-looking functions

9 years agoMoved 'joinOutFacts' to its proper place in XUtil and deprecated it (Label is wrong)
Norman Ramsey [Mon, 17 May 2010 21:12:48 +0000 (17:12 -0400)] 
Moved 'joinOutFacts' to its proper place in XUtil and deprecated it (Label is wrong)

9 years agoremove old GNUmakefile
Norman Ramsey [Mon, 17 May 2010 16:36:25 +0000 (12:36 -0400)] 
remove old GNUmakefile

9 years agoAdd bodyToBlockMap and bodyOfBlockMap.
Milan Straka [Sun, 16 May 2010 22:57:17 +0000 (23:57 +0100)] 
Add bodyToBlockMap and bodyOfBlockMap.

This is shady, but a lot of GHC code in compiler/cmm expects
the blocks in a closed graph to be in a map.

9 years agoAdd joinOutFacts function.
Milan Straka [Sun, 16 May 2010 22:37:07 +0000 (23:37 +0100)] 
Add joinOutFacts function.

9 years agoAdd blockToNodeList and blockOfNodeList.
Milan Straka [Sun, 16 May 2010 22:26:55 +0000 (23:26 +0100)] 
Add blockToNodeList and blockOfNodeList.

9 years agoAdd blockMapNodes and blockMapNodes3.
Milan Straka [Sun, 16 May 2010 22:24:31 +0000 (23:24 +0100)] 
Add blockMapNodes and blockMapNodes3.

9 years agoRename fold functions to use suffix 3.
Milan Straka [Sun, 16 May 2010 22:04:38 +0000 (23:04 +0100)] 
Rename fold functions to use suffix 3.

9 years agoRename mkUnique to intToUnique.
Milan Straka [Sun, 16 May 2010 21:21:08 +0000 (22:21 +0100)] 
Rename mkUnique to intToUnique.

We should be consistent with other Label and Unique
conversion functions.

9 years agoadd an FAQ file
Norman Ramsey [Fri, 14 May 2010 14:59:33 +0000 (10:59 -0400)] 
add an FAQ file

9 years agostop building the supplement for the submission to POPL 2010
Norman Ramsey [Fri, 14 May 2010 14:59:01 +0000 (10:59 -0400)] 
stop building the supplement for the submission to POPL 2010

9 years agoNote that clients, too may want to write functions polymorphic in the node representation
Norman Ramsey [Fri, 14 May 2010 14:58:37 +0000 (10:58 -0400)] 
Note that clients, too may want to write functions polymorphic in the node representation
(per conversaion with slpj)

9 years agoCleaned up combinator examples for the paper.
Norman Ramsey [Wed, 12 May 2010 21:35:54 +0000 (17:35 -0400)] 
Cleaned up combinator examples for the paper.

9 years agomore uniform label checking in graph splicing
Norman Ramsey [Wed, 12 May 2010 21:04:35 +0000 (17:04 -0400)] 
more uniform label checking in graph splicing

9 years agoextract thenFwdRewrite from code for paper
Norman Ramsey [Wed, 12 May 2010 21:04:24 +0000 (17:04 -0400)] 
extract thenFwdRewrite from code for paper

9 years agofix bug in code example in paper
Norman Ramsey [Wed, 12 May 2010 21:03:58 +0000 (17:03 -0400)] 
fix bug in code example in paper

9 years agoConstant-propagation figure is now extracted automatically from John's code; some...
Norman Ramsey [Wed, 12 May 2010 19:00:00 +0000 (15:00 -0400)] 
Constant-propagation figure is now extracted automatically from John's code; some names are saner

In particular

  suffix '3' for functions expecting or working with a triple
  no suffix for function expecting or working with higher-rank
     polymorphism (which is now explained in the paper as
     the default interface for clients).

9 years agomove the historical record out of Dataflow.hs and into HISTORY
Norman Ramsey [Wed, 12 May 2010 17:38:45 +0000 (13:38 -0400)] 
move the historical record out of Dataflow.hs and into HISTORY

9 years agoclarify common usage for client transfer functions.
Norman Ramsey [Wed, 12 May 2010 17:38:25 +0000 (13:38 -0400)] 
clarify common usage for client transfer functions.

9 years agoworking on making constant propagation more readable for the paper
Norman Ramsey [Wed, 12 May 2010 16:41:11 +0000 (12:41 -0400)] 
working on making constant propagation more readable for the paper

9 years agostart in on a more mnemonic naming scheme for combinators
Norman Ramsey [Wed, 12 May 2010 16:40:18 +0000 (12:40 -0400)] 
start in on a more mnemonic naming scheme for combinators

Suffix 3 if the client is providing a triple
Suffix Poly if the client is providing a single polymorphic function

(perhaps suffix Poly should be dropped?)

9 years agonoted grotesque code discovered while working on the paper
Norman Ramsey [Mon, 10 May 2010 17:42:20 +0000 (13:42 -0400)] 
noted grotesque code discovered while working on the paper

9 years agowork on the paper
Norman Ramsey [Mon, 10 May 2010 17:42:03 +0000 (13:42 -0400)] 
work on the paper

9 years agodetect a couple of places where duplicate labels might occur
Norman Ramsey [Mon, 10 May 2010 16:17:19 +0000 (12:17 -0400)] 
detect a couple of places where duplicate labels might occur

9 years agoMerge branch 'three-eight' of linux.cs.tufts.edu:/r/c--/papers/dfopt into three-eight
Norman Ramsey [Fri, 7 May 2010 19:04:43 +0000 (15:04 -0400)] 
Merge branch 'three-eight' of linux.cs.tufts.edu:/r/c--/papers/dfopt into three-eight

Conflicts:

testing/Ast2ir.hs
testing/ConstProp.hs
testing/Live.hs
testing/OptSupport.hs
testing/Simplify.hs

9 years agoadd comments to constant propagation
Norman Ramsey [Fri, 7 May 2010 16:21:17 +0000 (12:21 -0400)] 
add comments to constant propagation

9 years agoupdate northeastern notes
Norman Ramsey [Fri, 7 May 2010 16:21:04 +0000 (12:21 -0400)] 
update northeastern notes

9 years agostart to update paper to reflect 3.8
Norman Ramsey [Fri, 7 May 2010 16:20:45 +0000 (12:20 -0400)] 
start to update paper to reflect 3.8

9 years agoExporing Body and Block representation to GHC.
Milan Straka [Wed, 5 May 2010 18:53:18 +0000 (19:53 +0100)] 
Exporing Body and Block representation to GHC.

This is _shortterm_ only.

When converting the GHC code to use Hoopl, various folds
and maps over Graphs and Blocks are necessary. We are
touching Body(..) and Block(..) strictly in one module only
and after the conversion is done, reasonable set of these
methods will go back to Hoopl.

9 years agoRewrites return the possible rewrite in the monad.
Milan Straka [Tue, 4 May 2010 19:16:11 +0000 (20:16 +0100)] 
Rewrites return the possible rewrite in the monad.

As suggested by Simon PJ, instead of

    newtype FwdRewrite m n f
      = FwdRewrites { getFRewrites ::
                        ( n C O -> f -> Maybe (FwdRes m n f C O)
                        , n O O -> f -> Maybe (FwdRes m n f O O)
                        , n O C -> f -> Maybe (FwdRes m n f O C)
                        ) }
    data FwdRes m n f e x = FwdRes (m (Graph n e x)) (FwdRewrite m n f)

we now have

    newtype FwdRewrite m n f
      = FwdRewrites { getFRewrites ::
                        ( n C O -> f -> m (FwdRes m n f C O)
                        , n O O -> f -> m (FwdRes m n f O O)
                        , n O C -> f -> m (FwdRes m n f O C)
                         ) }
    data FwdRes m n f e x = FwdRes (Graph n e x) (FwdRewrite m n f)
                          | NoFwdRes

which allows to consult the monad before deciding whether to perform
a rewrite.

The type of withFuel changed to accommodate this.

9 years agoadded cabal entry for DList module (oops)
Norman Ramsey [Tue, 4 May 2010 15:24:15 +0000 (11:24 -0400)] 
added cabal entry for DList module (oops)

9 years agotrying to migrate reusable from functinos from testing client into Hoopl itself
Norman Ramsey [Tue, 4 May 2010 15:23:54 +0000 (11:23 -0400)] 
trying to migrate reusable from functinos from testing client into Hoopl itself

9 years agoconvert testing directory to use the new monad story
Norman Ramsey [Tue, 4 May 2010 15:23:19 +0000 (11:23 -0400)] 
convert testing directory to use the new monad story

9 years agoignore .hc files in testing directory
Norman Ramsey [Tue, 4 May 2010 15:22:23 +0000 (11:22 -0400)] 
ignore .hc files in testing directory

9 years agoExported ability to create new join functions (not just new lattices) from Pointed.hs
Norman Ramsey [Tue, 4 May 2010 15:21:35 +0000 (11:21 -0400)] 
Exported ability to create new join functions (not just new lattices) from Pointed.hs

9 years agoExtended Dominators module with auxiliary function 'immediateDominators'
Norman Ramsey [Tue, 4 May 2010 15:21:00 +0000 (11:21 -0400)] 
Extended Dominators module with auxiliary function 'immediateDominators'

9 years agoDominator algorithm without a newtype (for demonstration purposes)
Norman Ramsey [Tue, 4 May 2010 15:20:30 +0000 (11:20 -0400)] 
Dominator algorithm without a newtype (for demonstration purposes)

9 years agoRename methods of IsSet and IsMap.
Milan Straka [Mon, 3 May 2010 18:44:08 +0000 (19:44 +0100)] 
Rename methods of IsSet and IsMap.

Use prefix instead of suffix, ie. setUnion, setElems etc.
Also we have now
  type ElemOf set
and
  type KeyOf map

9 years agoMaking AGraph not depending on the monad type.
Milan Straka [Mon, 3 May 2010 17:01:58 +0000 (18:01 +0100)] 
Making AGraph not depending on the monad type.

The AGraph is now
  newtype AGraph n e x =
    A { graphOfAGraph :: forall m. UniqueMonad m =>
                         m (Graph n e x)
      }

Types of some functions (addBlocks, mkIfThenElse, mkWhileDo, ...)
got nicer.

The FwdRes and BwdRes now contain the replacement Graph in
a monad, instead of carrying an AGraph.

9 years agoTemporarily exporting getFuel and setFuel for GHC.
Milan Straka [Mon, 3 May 2010 16:56:51 +0000 (17:56 +0100)] 
Temporarily exporting getFuel and setFuel for GHC.

It should become exported for all clients in the future.

9 years agoRename HooplMonad to UniqueMonad.
Milan Straka [Mon, 3 May 2010 16:01:03 +0000 (17:01 +0100)] 
Rename HooplMonad to UniqueMonad.

It is more descriptive name and also consistent with FuelMonad.

9 years agoRenamed getLabel to freshLabel.
Milan Straka [Sun, 2 May 2010 17:25:00 +0000 (18:25 +0100)] 
Renamed getLabel to freshLabel.

That seems consistent with freshUnique.

9 years agoAbstracting collections of Uniques and Labels.
Milan Straka [Sun, 2 May 2010 17:13:21 +0000 (18:13 +0100)] 
Abstracting collections of Uniques and Labels.

Sets and Maps of Uniques and Labels are instances of classes
IsSet and IsMap defined in Compiler.Hoopl.Collections.
Also the representation of Labels has changed.

9 years agoMerge branch 'three-eight' of linux:/r/c--/papers/dfopt into three-eight
Joao Dias [Fri, 30 Apr 2010 21:38:31 +0000 (17:38 -0400)] 
Merge branch 'three-eight' of linux:/r/c--/papers/dfopt into three-eight

9 years agoUpdated testing client to provide and use monad.
Joao Dias [Fri, 30 Apr 2010 21:38:19 +0000 (17:38 -0400)] 
Updated testing client to provide and use monad.

9 years agoMerge branch 'three-eight' of linux.cs.tufts.edu:/r/c--/papers/dfopt into three-eight
Norman Ramsey [Fri, 30 Apr 2010 21:10:23 +0000 (17:10 -0400)] 
Merge branch 'three-eight' of linux.cs.tufts.edu:/r/c--/papers/dfopt into three-eight

Conflicts:

src/Compiler/Hoopl/XUtil.hs

conflicts on export list

9 years agoCompiler.Hoopl.Pointed can no longer be imported by name.
Norman Ramsey [Fri, 30 Apr 2010 21:09:13 +0000 (17:09 -0400)] 
Compiler.Hoopl.Pointed can no longer be imported by name.

9 years agoIn the new regime, Dominator now exports a FwdPass good in any monad.
Norman Ramsey [Fri, 30 Apr 2010 21:08:50 +0000 (17:08 -0400)] 
In the new regime, Dominator now exports a FwdPass good in any monad.

9 years agowork around bug in Haddock (no doco for GADT constructors)
Norman Ramsey [Fri, 30 Apr 2010 21:08:15 +0000 (17:08 -0400)] 
work around bug in Haddock (no doco for GADT constructors)

9 years agofix broken pattern match (missing cases)
Norman Ramsey [Fri, 30 Apr 2010 21:07:58 +0000 (17:07 -0400)] 
fix broken pattern match (missing cases)

9 years agoprovide convenience functions for analyzing graphs open at the entry.
Norman Ramsey [Fri, 30 Apr 2010 21:07:41 +0000 (17:07 -0400)] 
provide convenience functions for analyzing graphs open at the entry.

9 years agosignpost internal-only identifiers loud and clear
Norman Ramsey [Fri, 30 Apr 2010 21:07:20 +0000 (17:07 -0400)] 
signpost internal-only identifiers loud and clear

9 years agoexport SimpleFuelMonad for simple clients' use
Norman Ramsey [Fri, 30 Apr 2010 21:06:48 +0000 (17:06 -0400)] 
export SimpleFuelMonad for simple clients' use

9 years agoALWAYS warn of incomplete pattern matches.
Norman Ramsey [Fri, 30 Apr 2010 21:06:15 +0000 (17:06 -0400)] 
ALWAYS warn of incomplete pattern matches.

9 years agochange where Unique is exported (for saner Haddock documentation)
Norman Ramsey [Fri, 30 Apr 2010 21:05:34 +0000 (17:05 -0400)] 
change where Unique is exported (for saner Haddock documentation)

9 years agoMerge branch 'three-eight' of linux:/r/c--/papers/dfopt into three-eight
Joao Dias [Fri, 30 Apr 2010 20:46:37 +0000 (16:46 -0400)] 
Merge branch 'three-eight' of linux:/r/c--/papers/dfopt into three-eight

9 years agoAdapting test client to abstract body.
Joao Dias [Fri, 30 Apr 2010 20:46:14 +0000 (16:46 -0400)] 
Adapting test client to abstract body.

Lacking freshLabel, the code is still broken, but now I can fix it by adding a monad after pulling the latest changes.

9 years agoAdded function to lookup a block in a graph.
Joao Dias [Fri, 30 Apr 2010 20:45:17 +0000 (16:45 -0400)] 
Added function to lookup a block in a graph.
New type defined for return value b/c we might get back different types of blocks depending on the graph's shape.

9 years agoComment for EitherCO type.
Joao Dias [Fri, 30 Apr 2010 20:44:25 +0000 (16:44 -0400)] 
Comment for EitherCO type.

9 years agoExporting Body type (but not constructors).
Joao Dias [Fri, 30 Apr 2010 20:44:14 +0000 (16:44 -0400)] 
Exporting Body type (but not constructors).

9 years agocomments
Norman Ramsey [Fri, 30 Apr 2010 19:39:53 +0000 (15:39 -0400)] 
comments

9 years agoAdded some technology by which clients could create instances of HooplMonad.
Norman Ramsey [Fri, 30 Apr 2010 19:39:12 +0000 (15:39 -0400)] 
Added some technology by which clients could create instances of HooplMonad.

9 years agoMerge branch 'three-eight' of linux.cs.tufts.edu:/r/c--/papers/dfopt into three-eight
Norman Ramsey [Fri, 30 Apr 2010 19:29:44 +0000 (15:29 -0400)] 
Merge branch 'three-eight' of linux.cs.tufts.edu:/r/c--/papers/dfopt into three-eight

Conflicts:

src/Compiler/Hoopl/Dataflow.hs
src/Compiler/Hoopl/Fuel.hs
src/Compiler/Hoopl/MkGraph.hs
src/hoopl.cabal

expunged 'allUniques'; need to provide a simple instance of HooplMonad.

9 years agothe Great Monad Generalization. An extra type parameter (for the client's monad)...
Norman Ramsey [Fri, 30 Apr 2010 19:03:49 +0000 (15:03 -0400)] 
the Great Monad Generalization. An extra type parameter (for the client's monad) emerges everywhere.

9 years agoMake body abstract for library clients.
Joao Dias [Fri, 30 Apr 2010 18:59:52 +0000 (14:59 -0400)] 
Make body abstract for library clients.

9 years agoBody of graph converted to a map
Joao Dias [Fri, 30 Apr 2010 18:03:51 +0000 (14:03 -0400)] 
Body of graph converted to a map

9 years agoFirst part of Uniques and Labels.
Milan Straka [Fri, 30 Apr 2010 09:47:04 +0000 (10:47 +0100)] 
First part of Uniques and Labels.

Adding Unique module, changing FuelMonad to work with Unique,
withFresh works with both Unique and Label.

The representation of Label and the Maps and Sets will change
shortly.

9 years agotried to fix Haddock errors; gave up as hopeless.
Norman Ramsey [Thu, 29 Apr 2010 23:06:42 +0000 (19:06 -0400)] 
tried to fix Haddock errors; gave up as hopeless.

9 years agoMerge branch 'three-eight' of linux.cs.tufts.edu:/r/c--/papers/dfopt into three-eight
Norman Ramsey [Thu, 29 Apr 2010 23:01:43 +0000 (19:01 -0400)] 
Merge branch 'three-eight' of linux.cs.tufts.edu:/r/c--/papers/dfopt into three-eight

9 years agoFold code for the forward case, nested.
Norman Ramsey [Thu, 29 Apr 2010 23:01:29 +0000 (19:01 -0400)] 
Fold code for the forward case, nested.

A bit ugly---not as nice as I would like!

9 years agoMerge branch 'three-eight' of linux:/r/c--/papers/dfopt into three-eight
Joao Dias [Thu, 29 Apr 2010 22:10:16 +0000 (18:10 -0400)] 
Merge branch 'three-eight' of linux:/r/c--/papers/dfopt into three-eight

9 years agoUpdating testing client to match the many recent changes.
Joao Dias [Thu, 29 Apr 2010 22:09:58 +0000 (18:09 -0400)] 
Updating testing client to match the many recent changes.
Not quite done, but I have to run for the evening.

9 years agoAdded block-folding functions. Code for backward and forward is almost identical...
Joao Dias [Thu, 29 Apr 2010 22:09:22 +0000 (18:09 -0400)] 
Added block-folding functions. Code for backward and forward is almost identical, but type is not; not sure how to achieve better code sharing there....

9 years agoAdded EitherCO type family to Hoopl. Maybe it should be a GADT instead?
Joao Dias [Thu, 29 Apr 2010 22:08:46 +0000 (18:08 -0400)] 
Added EitherCO type family to Hoopl. Maybe it should be a GADT instead?

9 years agoadded Haddock documentation
Norman Ramsey [Thu, 29 Apr 2010 21:57:53 +0000 (17:57 -0400)] 
added Haddock documentation

9 years agohid block constructors
Norman Ramsey [Thu, 29 Apr 2010 21:57:41 +0000 (17:57 -0400)] 
hid block constructors

9 years agoadded mkfile in src/Compiler
Norman Ramsey [Thu, 29 Apr 2010 21:48:26 +0000 (17:48 -0400)] 
added mkfile in src/Compiler

9 years agorenamed { DataflowNest -> Dataflow, Dataflow -> OldDataflow }
Norman Ramsey [Thu, 29 Apr 2010 21:48:18 +0000 (17:48 -0400)] 
renamed { DataflowNest -> Dataflow, Dataflow -> OldDataflow }

9 years agorefactored backward data flow. No testing.
Norman Ramsey [Thu, 29 Apr 2010 21:43:47 +0000 (17:43 -0400)] 
refactored backward data flow.  No testing.

9 years agoMissing a useful type in the combinator interface.
Joao Dias [Thu, 29 Apr 2010 20:52:01 +0000 (16:52 -0400)] 
Missing a useful type in the combinator interface.

Added fold fwd and bwd across blocks.

9 years agoAdded product combinators for forward and backward analyses.
Joao Dias [Thu, 29 Apr 2010 20:24:30 +0000 (16:24 -0400)] 
Added product combinators for forward and backward analyses.

9 years agoRefactored the entry plumbing again. Results consistent but less concise.
Norman Ramsey [Thu, 29 Apr 2010 00:27:46 +0000 (20:27 -0400)] 
Refactored the entry plumbing again.  Results consistent but less concise.

Type signatures for nested functions are not too thrilling...

9 years agoignore
Norman Ramsey [Wed, 28 Apr 2010 22:33:41 +0000 (18:33 -0400)] 
ignore

9 years agoRefactored story about entry points to use more static typing (fwd only)
Norman Ramsey [Wed, 28 Apr 2010 22:33:35 +0000 (18:33 -0400)] 
Refactored story about entry points to use more static typing (fwd only)

9 years agoType variable for facts should be called 'f' not 'a'.
Norman Ramsey [Wed, 28 Apr 2010 22:32:44 +0000 (18:32 -0400)] 
Type variable for facts should be called 'f' not 'a'.

9 years agoAdded commutative diagram.
Norman Ramsey [Wed, 28 Apr 2010 22:32:26 +0000 (18:32 -0400)] 
Added commutative diagram.

9 years agoadded results of dominator analysis.
Norman Ramsey [Wed, 28 Apr 2010 22:32:06 +0000 (18:32 -0400)] 
added results of dominator analysis.