See: Description
Class  Description 

EnterSSA 
This compiler phase constructs SSA form.

GCP 
Global code placement comes in two flavours.

GCP.GCPFinalization 
This class sets up the IR state prior to entering SSA for GCP

GCP.GCPPreparation 
This class sets up the IR state prior to entering SSA for GCP

GlobalCSE 
This class provides global common sub expression elimination.

GlobalValueNumber 
This class implements global value numbering
ala Alpern, Wegman and Zadeck, PoPL 88.

GlobalValueNumberState 
This class holds the results of global value numbering.

GVCongruenceClass 
This class represents a congruence class for
global value numbering.

HeapVariable<T> 
An HeapVariable represents a heap variable for heap array SSA form.

IndexPropagation 
Perform index propagation (see Fink, Knobe & Sarkar, SAS 2000)
This analysis computes for each Array SSA variable A,
the set of value numbers V(k) such that location
A[k] is "available" at def A, and thus at all uses of A
We formulate this as a data flow problem as described in the paper.

IndexPropagation.ArrayCell 
An ArrayCell is a lattice cell for the index propagation
problem, used in redundant load elimination for onedimensional arrays.

IndexPropagation.ObjectCell 
An ObjectCell is a lattice cell for the index propagation
problem, used in redundant load elimination for fields.

IndexPropagationSystem 
Represents a set of dataflow equations used to solve the
index propagation problem.

IndexPropagationSystem.MeetOperator 
Represents a MEET function (intersection) over Cells.

IndexPropagationSystem.UpdateUseArrayOperator 
Represents an UPDATE_USE function over two ArrayCells.

IndexPropagationSystem.UpdateUseObjectOperator 
Represents an UPDATE_USE function over two ObjectCells.

LeaveSSA 
This compiler phase translates out of SSA form.

LeaveSSA.Copy 
An instance of this class represents a pending copy instruction
to be inserted.

LeaveSSA.VariableStacks 
This class provides an abstraction over stacks of names
for registers.

LICM 
This class does loop invariant code movement.

LiveRangeSplitting 
Perform liverange splitting.

LiveRangeSplitting.LiveRangeSplittingPhase  
LiveRangeSplitting.LiveRangeSplittingPhase.BasicBlockPair 
A utility class to represent an edge in the CFG.

LiveRangeSplitting.RenamePreparation 
This class sets up the IR state prior to entering SSA.

LoadElimination 
This class implements the redundant load elimination by
Fink, Knobe & Sarkar.

LoadElimination.GVNPreparation 
This class sets up the IR state prior to entering SSA for GVN.

LoadElimination.LoadEliminationPreparation 
This class sets up the IR state prior to entering SSA for load
elimination

LoadElimination.LoadEliminator  
LoadElimination.UseRecord  
LoadElimination.UseRecordSet  
LoopVersioning 
This optimisation works from the outer most loop inward, optimising
loops that conform to being regular
AnnotatedLSTNode s. 
PiNodes 
This pass inserts PI nodes (Effectively copies)
on branch edges, to introduce new names for analysis

RedundantBranchElimination 
Redundant branch elimination based on SSA form, global value numbers,
and dominance relationships.

RedundantBranchElimination.EnsureSSA  
RedundantBranchElimination.RBE  
SSA 
This module holds utility functions for SSA form.

SSADictionary 
An
SSADictionary structure holds lookaside
information regarding Heap Array SSA form for an IR. 
SSADictionary.AllInstructionEnumeration 
This class implements an
Enumeration over all
instructions for a basic block. 
SSADictionary.HeapKey<T> 
This class represents the name of a heap variable in the heap array
SSA form.

SSAOptions 
This module defines parameters to the SSA construction process.

SSATuneUp 
This phase puts the IR in SSA form and performs a set of simple
optimizations to clean up.

SSATuneUp.FoldingDriver 
This class drives expression folding.

SSATuneUp.TuneUpPreparation 
This class sets up the IR state prior to entering SSA.

UniformlyGeneratedGVN 
This class implements index equivalence via global value numbering
and 'uniformly generated expressions'.

ValueGraph 
This class implements the value graph used in global value numbering
a la Alpern, Wegman and Zadeck.

ValueGraphEdge 
This class implements an edge in the value graph used in global value
numbering
ala Alpern, Wegman and Zadeck.

ValueGraphParamLabel 
Represent a value that is a parameter

ValueGraphVertex 
This class implements a vertex in the value graph used in global
value numbering
ala Alpern, Wegman and Zadeck.

ValueNumberPair 
Represents a pair of value numbers.

Enum  Description 

EnterSSA.PhiTypeInformation 