|
|||||||||
| 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 converted
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 | ||||||||