|
|||||||||
PREV PACKAGE NEXT PACKAGE | FRAMES NO FRAMES |
IR.Quads
intermediate representation.
See:
Description
Class Summary | |
---|---|
ArrayCopyInliner | ArrayCopyInliner will inline array copy. |
ArrayInitRemover | ArrayInitRemover converts ARRAYINIT quads
into chains of ASET quads. |
ArrayUnroller | ArrayUnroller unrolls loops containing arrays so that
CacheEquivalence can make larger equivalence sets. |
BasicCSE | BasicCSE is an attempt to perform
common subexpression elemination, but only within basic blocks. |
CachingCallGraph | CachingCallGraph is a caching wrapper for a call
graph. |
CallGraph | CallGraph is a general interface that should be
implemented by a call graph. |
CallGraphImpl | CallGraphImpl constructs a simple directed call graph. |
CallGraphImpl2 | CallGraphImpl2 constructs a simple directed call graph. |
CoalescingToNoSSA | CoalescingToNoSSA converts SSA, SSI, and RSSx forms
to No-SSA form, *coalescing* variables mentioned in phi and sigma
statements where possible instead of inserting moves. |
CollectSyncStats | CollectSyncStats is used at run time to collect information
about synchronization operations. |
ComponentOfReducer | The ComponentOfReducer pass attempts to transform
COMPONENTOF operations into (more efficient)
INSTANCEOF operations, when this is safe to do. |
DeadCode | DeadCode removes dead code
(unused definitions/useless jmps/one-argument phi functions/all moves) from
a method. |
DefiniteInitOracle | A DefiniteInitOracle tells you whether a given
field is "definitely initialized" before control flow leaves
every constructor of its declaring class. |
DispatchTreeTransformation | DispatchTreeTransformation replaces dynamic dispatch
call sites with TYPESWITCHes leading to static dispatch calls. |
FieldSyncOracle | A FieldSyncOracle tells which fields a given method could
possibly access (either directly, or via a method call), and whether
the given method will ever acquire/release a lock (either directly, or
via a method call). |
InitializerTransform | InitializerTransform transforms class initializers so
that they are idempotent and so that they perform all needed
initializer ordering checks before accessing non-local data. |
MayReadOracle | A MayReadOracle tells you which fields of a given
class 'may' be read on the given edge. |
MemoryOptimization | MemoryOptimization reduces the number of memory operations
by combining multiple loads/stores to the same field/array element. |
MethodInliningCodeFactory | MethodInliningCodeFactory makes an HCode
from an HMethod , and inlines methods at call sites
registered with the inline(CALL) function. |
MethodTraceFactory | MethodTraceFactory adds DEBUG quads
to the entry and exit points of every method. |
MustParamOracle | A MustParamOracle tells you what method variables
*must* contain the values passed in as parameters to the method. |
NewMover | The NewMover class moves NEW operations
as close as possible to the CALL to their initializers. |
Nonvirtualize | Nonvirtualize uses a FinalMap to
change virtual method invocations to non-virtual invocations,
where this is safe. |
QuadClassHierarchy | QuadClassHierarchy computes a ClassHierarchy
of classes possibly usable starting from some root method using
quad form. |
QuadCounter | QuadCounter is an harpoon.ClassFile.HCodeFactory
which counts the number of quads that have been convert ed
thus far. |
QuadInterferenceGraph | QuadInterferenceGraph constructs a variable-liveness
interference graph from a Quad.Code . |
QuadLiveness | QuadLiveness performs live variable analysis for a given
HCode . |
SimpleConstMap | SimpleConstMap is a very simple implementation of
ConstMap that reports whether a given
Temp is defined by a CONST quad. |
SmallMethodInliner | SmallMethodInliner will inline small methods until
the code is bloated by the specified amount. |
SmallMethodInliner.IntMap | |
SSICallGraph | SSICallGraph |
SSIStats | SSIStats is a class to provide counts of uses, definitions
and variables in plain, SSA, and SSI forms. |
SSIToSSAMap | An SSIToSSAMap allows you to look at an SSI
representation "with glasses on" so that it appears as SSA. |
TypeInfo | TypeInfo is a simple type analysis tool for quad-ssi form. |
TypeSwitchRemover | TypeSwitchRemover converts TYPESWITCH quads
into chains of INSTANCEOF and CJMP quads. |
Unreachable | Unreachable gets rid of unreachable code. |
Virtualize | Virtualize makes any non-virtual invocations of
uncallable methods non-virtual, so that they don't lead to
link errors later. |
This package contains analysis routines applicable only to
the IR.Quads
intermediate representation.
|
|||||||||
PREV PACKAGE NEXT PACKAGE | FRAMES NO FRAMES |