harpoon.Backend.RuntimeTiny
Class Runtime
java.lang.Object
harpoon.Backend.Generic.Runtime
harpoon.Backend.Runtime1.Runtime
harpoon.Backend.RuntimeTiny.Runtime
- All Implemented Interfaces:
- Serializable
public class Runtime
- extends Runtime
RuntimeTiny.Runtime is a size-optimized version of the
FLEX backend. It inherits most of the implementation of Runtime1,
but uses indices rather than direct pointers to compress the claz
field and (will) support byte- and bit-aligned (i.e. "unaligned")
fields in object layouts.
- Version:
- $Id: Runtime.java,v 1.4 2004/02/08 01:57:47 cananian Exp $
- Author:
- C. Scott Ananian <cananian@alumni.princeton.edu>
- See Also:
- Serialized Form
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
clazShrink
protected static final boolean clazShrink
hashlockShrink
protected static final boolean hashlockShrink
byteAlign
protected static final boolean byteAlign
fixAlign
protected static final boolean fixAlign
cn
protected harpoon.Backend.RuntimeTiny.ClazNumbering cn
Runtime
public Runtime(Frame frame,
AllocationStrategy as,
HMethod main,
boolean prependUnderscore)
Runtime
public Runtime(Frame frame,
AllocationStrategy as,
HMethod main,
boolean prependUnderscore,
ObjectBuilder.RootOracle rootOracle)
initObjectBuilder
protected Runtime.ObjectBuilder initObjectBuilder(ObjectBuilder.RootOracle ro)
- Overrides:
initObjectBuilder in class Runtime
initTreeBuilder
protected TreeBuilder initTreeBuilder()
- Overrides:
initTreeBuilder in class Runtime
setClassHierarchy
public void setClassHierarchy(ClassHierarchy ch)
- Description copied from class:
Runtime
- Sets the
ClassHierarchy to use for this
Generic.Runtime. This method must be called at least
once before the TreeBuilder or classData
are used to generate tree form. It may be called multiple times
if transformations cause the class hierarchy to change.
- Overrides:
setClassHierarchy in class Runtime
nativeTreeCodeFactory
public HCodeFactory nativeTreeCodeFactory(HCodeFactory hcf)
- Description copied from class:
Runtime
- This code factory hook allows the runtime to return
runtime-specific stubs for native methods --- or any other
method which the runtime wishes to reimplement. The
default implementation just passes the given code factory
through without modification.
The code factory returned by this method should return
a null for methods which the output routine
should skip. For example, if stubs are not needed for
native methods, then the code factory should return
null when convert() is called
on a native method (just as the standard code factories do).
The code factory given should produce tree form. The returned
code factory should also produce tree form; the tree form need
not be canonicalized or optimized.
- Overrides:
nativeTreeCodeFactory in class Runtime
classData
public List<HData> classData(HClass hc)
- Description copied from class:
Runtime
- Returns a list of
HDatas which are needed for the
given class.
- Overrides:
classData in class Runtime
getExtraClazInfo
protected Runtime.ExtraClazInfo getExtraClazInfo()
- Description copied from class:
Runtime
- A means for a subclass to set this.
- Overrides:
getExtraClazInfo in class Runtime