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.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 | |
org.jikesrvm.compilers.opt.ir.operand | |
org.jikesrvm.compilers.opt.ssa |
SSA implementation (disabled because of bugs, see entry in issue tracker).
|
Modifier and Type | Method and Description |
---|---|
FieldReference |
MemberReference.asFieldReference() |
FieldReference |
RVMClass.getFieldRef(int constantPoolIndex) |
static FieldReference |
MemberReference.getFieldRef(int id) |
(package private) static FieldReference |
ClassFileReader.getFieldRef(int[] constantPool,
int constantPoolIndex) |
FieldReference |
BytecodeStream.getFieldReference()
Returns a reference to a field.
|
FieldReference |
BytecodeStream.getFieldReference(int[] constantPool)
Returns a reference to a field, for use prior to the class being loaded.
|
Modifier and Type | Method and Description |
---|---|
boolean |
FieldReference.definitelyDifferent(FieldReference that)
Do this and that definitely refer to different fields?
|
boolean |
FieldReference.definitelySame(FieldReference that)
Do this and that definitely refer to the same field?
|
Modifier and Type | Method and Description |
---|---|
protected void |
BaselineCompiler.emit_aload_resolved_getfield(int index,
FieldReference fieldRef)
Emits code to load a reference local variable and then perform a field load
By default, this method emits code for aload and then for resolved_getfield.
|
protected abstract void |
TemplateCompilerFramework.emit_resolved_getfield(FieldReference fieldRef)
Emit code to implement a getfield
|
protected abstract void |
TemplateCompilerFramework.emit_resolved_getstatic(FieldReference fieldRef)
Emit code to implement a getstatic
|
protected abstract void |
TemplateCompilerFramework.emit_resolved_putfield(FieldReference fieldRef)
Emit code to implement a putfield
|
protected abstract void |
TemplateCompilerFramework.emit_resolved_putstatic(FieldReference fieldRef)
Emit code to implement a putstatic
|
protected abstract void |
TemplateCompilerFramework.emit_unresolved_getfield(FieldReference fieldRef)
Emit code to implement a dynamically linked getfield
|
protected abstract void |
TemplateCompilerFramework.emit_unresolved_getstatic(FieldReference fieldRef)
Emit code to implement a dynamically linked getstatic
|
protected abstract void |
TemplateCompilerFramework.emit_unresolved_putfield(FieldReference fieldRef)
Emit code to implement a dynamically linked putfield
|
protected abstract void |
TemplateCompilerFramework.emit_unresolved_putstatic(FieldReference fieldRef)
Emit code to implement a dynamically linked putstatic
|
Modifier and Type | Method and Description |
---|---|
protected void |
BaselineCompilerImpl.emit_aload_resolved_getfield(int index,
FieldReference fieldRef)
Emits code to load a reference local variable and then perform a field load
|
protected void |
BaselineCompilerImpl.emit_resolved_getfield(FieldReference fieldRef) |
protected void |
BaselineCompilerImpl.emit_resolved_getstatic(FieldReference fieldRef) |
protected void |
BaselineCompilerImpl.emit_resolved_putfield(FieldReference fieldRef) |
protected void |
BaselineCompilerImpl.emit_resolved_putstatic(FieldReference fieldRef) |
protected void |
BaselineCompilerImpl.emit_unresolved_getfield(FieldReference fieldRef) |
protected void |
BaselineCompilerImpl.emit_unresolved_getstatic(FieldReference fieldRef) |
protected void |
BaselineCompilerImpl.emit_unresolved_putfield(FieldReference fieldRef) |
protected void |
BaselineCompilerImpl.emit_unresolved_putstatic(FieldReference fieldRef) |
Modifier and Type | Method and Description |
---|---|
private LocationOperand |
BC2IR.makeInstanceFieldRef(FieldReference f) |
private LocationOperand |
BC2IR.makeStaticFieldRef(FieldReference f)
Make a field reference operand referring to the given field with the
given type.
|
Modifier and Type | Method and Description |
---|---|
private void |
ExpandRuntimeServices.primitiveObjectFieldStoreHelper(RVMMethod target,
Instruction inst,
IR ir,
FieldReference fieldRef)
Helper method to generate call to primitive putfield write barrier
|
Modifier and Type | Method and Description |
---|---|
static Operator |
IRTools.getLoadOp(FieldReference field,
boolean isStatic)
Returns the correct operator for loading from the given field
|
static Operator |
IRTools.getStoreOp(FieldReference field,
boolean isStatic)
Returns the correct operator for storing to the given field.
|
Modifier and Type | Field and Description |
---|---|
(package private) FieldReference |
LocationOperand.fieldRef
Field that corresponds to this location;
null if this is not a field access.
|
Modifier and Type | Method and Description |
---|---|
FieldReference |
LocationOperand.getFieldRef() |
Constructor and Description |
---|
LocationOperand(FieldReference loc)
Constructs a new location operand with the given field.
|
Modifier and Type | Method and Description |
---|---|
private void |
SSADictionary.registerDef(Instruction s,
BasicBlock b,
FieldReference fr)
Register that instruction
s writes a heap variable for
a given field. |
private void |
SSADictionary.registerUse(Instruction s,
FieldReference fr)
Register that an instruction uses a heap variable for a given
field.
|