Package | Description |
---|---|
org.jikesrvm.classloader |
Provides classes that implement the classloading system as well as
data types that represent Java entities like classes, fields, methods
and primitives.
|
org.jikesrvm.compilers.baseline | |
org.jikesrvm.compilers.baseline.ia32 | |
org.jikesrvm.compilers.common | |
org.jikesrvm.compilers.opt.bc2ir |
Provides classes that implement the transformation from bytecode to the
high-level intermediate representation (HIR).
|
org.jikesrvm.compilers.opt.hir2lir | |
org.jikesrvm.compilers.opt.ir.operand | |
org.jikesrvm.compilers.opt.runtimesupport | |
org.jikesrvm.jni | |
org.jikesrvm.mm.mminterface | |
org.jikesrvm.objectmodel | |
org.jikesrvm.runtime |
Modifier and Type | Class and Description |
---|---|
class |
Primitive
Description of a java "primitive" type (int, float, etc.)
|
class |
RVMArray
Description of a java "array" type.
|
class |
RVMClass
Description of a java "class" type.
|
class |
UnboxedType
Description of an Unboxed Magic type.
|
Modifier and Type | Field and Description |
---|---|
private RVMType |
RVMArray.elementType
The RVMType object for elements of this array type.
|
private RVMType |
RVMArray.innermostElementType
The RVMType object for the innermost element of this array type.
|
private RVMType |
TypeReference.type
The RVMType instance that this type reference resolves to.
|
private static RVMType[][] |
RVMType.types
All types
|
Modifier and Type | Field and Description |
---|---|
private ImmutableEntryHashMapRVM<String,RVMType> |
BootstrapClassLoader.loaded |
Modifier and Type | Method and Description |
---|---|
static RVMType |
RVMClassLoader.defineClassInternal(String className,
byte[] classRep,
int offset,
int length,
ClassLoader classloader) |
static RVMType |
RVMClassLoader.defineClassInternal(String className,
InputStream is,
ClassLoader classloader) |
RVMType |
RVMArray.getElementType() |
RVMType |
RVMArray.getInnermostElementType() |
RVMType |
BytecodeStream.getObjectArrayType(RVMType klass)
Returns the type of the array of given object type (as a RVMType).
|
RVMType |
BytecodeStream.getPrimitiveArrayType()
Returns the type of the primitive array (as a RVMType).
|
static RVMType |
RVMType.getType(int id) |
(package private) RVMType |
BootstrapClassLoader.loadVMClass(String className)
Backdoor for use by TypeReference.resolve when !
|
RVMType |
TypeReference.peekType() |
RVMType |
TypeReference.resolve()
Force the resolution of the type reference.
|
private RVMType |
TypeReference.resolveInternal() |
Modifier and Type | Method and Description |
---|---|
(package private) static short[] |
DynamicTypeCheck.buildSuperclassIds(RVMType t)
Create the superclass Id vector for a RVMType.
|
protected static Class<?> |
RVMType.createClassForType(RVMType type,
TypeReference typeRef) |
RVMType |
BytecodeStream.getObjectArrayType(RVMType klass)
Returns the type of the array of given object type (as a RVMType).
|
static boolean |
DynamicTypeCheck.instanceOfResolved(RVMType LHSType,
RVMType RHSType)
Can we store an object of type RHSType in a variable of type LHSType?
|
boolean |
RVMType.isAssignableFrom(RVMType type) |
private static int |
RVMType.nextId(RVMType it)
Allocate entry in types array and add it (NB resize array if it's
not long enough).
|
static void |
SpecializedMethodManager.notifyTypeInstantiated(RVMType type)
Sets up the specialized methods for the given type.
|
static void |
SpecializedMethodManager.refreshSpecializedMethods(RVMType type)
Refreshes the specialized methods for the given type.
|
(package private) void |
TypeReference.setType(RVMType rt) |
abstract CodeArray |
SpecializedMethod.specializeMethod(RVMType type) |
Constructor and Description |
---|
RVMArray(TypeReference typeRef,
RVMType elementType) |
Modifier and Type | Method and Description |
---|---|
protected abstract void |
TemplateCompilerFramework.emit_checkcast_final(RVMType type)
Emit code to implement the checkcast bytecode
|
protected abstract void |
TemplateCompilerFramework.emit_instanceof_final(RVMType type)
Emit code to implement the instanceof bytecode
|
int |
BaselineCompiledMethod.findCatchBlockForInstruction(Offset instructionOffset,
RVMType exceptionType)
Find a catch block within the compiled method
|
Modifier and Type | Method and Description |
---|---|
protected void |
BaselineCompilerImpl.emit_checkcast_final(RVMType type) |
protected void |
BaselineCompilerImpl.emit_instanceof_final(RVMType type) |
Modifier and Type | Method and Description |
---|---|
static int |
ExceptionTable.findCatchBlockForInstruction(int[] eTable,
Offset instructionOffset,
RVMType exceptionType)
Return the machine code offset for the catch block that will handle
the argument exceptionType,or -1 if no such catch block exists.
|
int |
HardwareTrapCompiledMethod.findCatchBlockForInstruction(Offset instructionOffset,
RVMType exceptionType) |
abstract int |
CompiledMethod.findCatchBlockForInstruction(Offset instructionOffset,
RVMType exceptionType)
Find "catch" block for a machine instruction of
this method that might be guarded
against specified class of exceptions by a "try" block.
|
Modifier and Type | Method and Description |
---|---|
private TypeOperand |
BC2IR.makeTypeOperand(RVMType type)
Make a type operand that refers to the given type.
|
Modifier and Type | Method and Description |
---|---|
(package private) static Operand |
ConvertToLowLevelIR.getTIB(Instruction s,
IR ir,
RVMType type) |
Modifier and Type | Field and Description |
---|---|
private RVMType |
TypeOperand.type
A type
|
RVMType |
TIBConstantOperand.value
The non-
null type for this TIB |
Modifier and Type | Method and Description |
---|---|
RVMType |
TypeOperand.getVMType() |
Modifier and Type | Method and Description |
---|---|
void |
MethodOperand.refine(RVMType targetClass)
Refines the target information.
|
Constructor and Description |
---|
TIBConstantOperand(RVMType v)
Construct a new TIB constant operand
|
TypeOperand(RVMType typ) |
TypeOperand(RVMType t,
TypeReference tr) |
Modifier and Type | Method and Description |
---|---|
private void |
OptCompiledMethod.dealWithPossibleRemovalOfCatchBlockByTheOptCompiler(Offset instructionOffset,
RVMType exceptionType,
int catchOffset) |
int |
OptCompiledMethod.findCatchBlockForInstruction(Offset instructionOffset,
RVMType exceptionType)
Find "catch" block for a machine instruction of this method.
|
Modifier and Type | Method and Description |
---|---|
int |
JNICompiledMethod.findCatchBlockForInstruction(Offset instructionOffset,
RVMType exceptionType) |
Modifier and Type | Method and Description |
---|---|
private static int |
SpecializedScanMethod.getPattern(RVMType type) |
static Object |
MemoryManager.newRuntimeTable(int size,
RVMType type)
Allocates a new runtime table (at runtime).
|
static void |
MemoryManager.notifyClassResolved(RVMType vmType)
A new type has been resolved by the VM.
|
static int |
MemoryManager.pickAllocator(RVMType type)
Returns the appropriate allocation scheme/area for the given
type.
|
static int |
MemoryManager.pickAllocator(RVMType type,
RVMMethod method)
Returns the appropriate allocation scheme/area for the given type
and given method requesting the allocation.
|
private static int |
MemoryManager.pickAllocatorForType(RVMType type)
Determine the default allocator to be used for a given type.
|
CodeArray |
SpecializedScanMethod.specializeMethod(RVMType type)
TODO: Lazily compile specialized methods?
|
Modifier and Type | Method and Description |
---|---|
static RVMType |
ObjectModel.getObjectType(Object o) |
RVMType |
TIB.getType() |
Modifier and Type | Method and Description |
---|---|
static void |
JavaHeader.allocateThinLock(RVMType t)
Allocates a thin lock word for instances of the type
(if they already have one, then has no effect).
|
static void |
ObjectModel.allocateThinLock(RVMType t)
Allocates a thin lock word for instances of the type
(if they already have one, then has no effect).
|
static int |
ObjectModel.computeHeaderSize(RVMType type)
Computes the header size of an instance of the given type.
|
boolean |
ITable.isFor(RVMType I)
Does this ITable correspond to the given interface?
|
static void |
JavaHeader.setTIB(BootImageInterface bootImage,
Address refOffset,
Address tibAddr,
RVMType type)
Sets the TIB for an object during bootimage writing.
|
static void |
ObjectModel.setTIB(BootImageInterface bootImage,
Address refAddress,
Address tibAddr,
RVMType type)
Sets the TIB for an object during bootimage writing.
|
void |
TIB.setType(RVMType type) |
Modifier and Type | Method and Description |
---|---|
static RVMType |
Magic.getObjectType(Object object)
Get an object's type.
|
static RVMType |
Magic.objectAsType(Object object)
Cast object.
|
Modifier and Type | Method and Description |
---|---|
private static Object |
RuntimeEntrypoints.cloneArray(Object obj,
RVMType type)
Clone an array
|
private static Object |
RuntimeEntrypoints.cloneClass(Object obj,
RVMType type)
Clone an object implementing a class - check that the class is cloneable
(we make this a small method with just a test so that the inliner will
inline it and hopefully eliminate the instanceof test).
|
private static Object |
RuntimeEntrypoints.cloneClass2(Object obj,
RVMType type)
Clone an object implementing a class - the actual clone
|
static boolean |
RuntimeEntrypoints.isAssignableWith(RVMType lhs,
RVMType rhs)
May a variable of type "lhs" be assigned a value of type "rhs"?
|
static void |
Callbacks.notifyDefineClass(RVMType type)
Notify the monitor that java.lang.Class.defineclass was called.
|
void |
Callbacks.DefineClassMonitor.notifyDefineClass(RVMType type)
Notify the monitor that java.lang.Class.defineclass was called.
|
static void |
Callbacks.notifyForName(RVMType type)
Notify the monitor that java.lang.Class.forName was called.
|
void |
Callbacks.ForNameMonitor.notifyForName(RVMType type)
Notify the monitor that java.lang.Class.forName was called.
|
static void |
Callbacks.notifyLoadClass(RVMType type)
Notify the monitor that java.lang.Class.loadclass was called.
|
void |
Callbacks.LoadClassMonitor.notifyLoadClass(RVMType type)
Notify the monitor that java.lang.Class.loadclass was called.
|