|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.jikesrvm.classloader.AnnotatedElement org.jikesrvm.classloader.RVMMember org.jikesrvm.classloader.RVMMethod org.jikesrvm.classloader.NativeMethod
public final class NativeMethod
A native method of a java class.
Field Summary | |
---|---|
private Address |
nativeIP
the IP of the native procedure |
private Address |
nativeTOC
the TOC of the native procedure. |
Fields inherited from class org.jikesrvm.classloader.RVMMethod |
---|
currentCompiledMethod |
Fields inherited from class org.jikesrvm.classloader.RVMMember |
---|
memRef, modifiers, offset |
Fields inherited from class org.jikesrvm.classloader.AnnotatedElement |
---|
declaredAnnotationDatas |
Fields inherited from interface org.jikesrvm.Constants |
---|
NOT_REACHED, REFLECTION_FPRS_BITS, REFLECTION_FPRS_MASK, REFLECTION_GPRS_BITS, REFLECTION_GPRS_MASK |
Fields inherited from interface org.jikesrvm.objectmodel.ThinLockConstants |
---|
TL_DEDICATED_U16_OFFSET, TL_DEDICATED_U16_SHIFT, TL_LOCK_COUNT_MASK, TL_LOCK_COUNT_SHIFT, TL_LOCK_COUNT_UNIT, TL_LOCK_ID_MASK, TL_LOCK_ID_SHIFT, TL_NUM_BITS_RC, TL_NUM_BITS_STAT, TL_NUM_BITS_TID, TL_STAT_BIASABLE, TL_STAT_FAT, TL_STAT_MASK, TL_STAT_SHIFT, TL_STAT_THIN, TL_THREAD_ID_MASK, TL_THREAD_ID_SHIFT, TL_UNLOCK_MASK |
Fields inherited from interface org.jikesrvm.objectmodel.TIBLayoutConstants |
---|
IMT_METHOD_SLOTS, NEEDS_DYNAMIC_LINK, TIB_ARRAY_ELEMENT_TIB_INDEX, TIB_DOES_IMPLEMENT_INDEX, TIB_FIRST_SPECIALIZED_METHOD_INDEX, TIB_FIRST_VIRTUAL_METHOD_INDEX, TIB_INTERFACE_DISPATCH_TABLE_INDEX, TIB_SUPERCLASS_IDS_INDEX, TIB_TYPE_INDEX |
Fields inherited from interface org.jikesrvm.HeapLayoutConstants |
---|
BAD_MAP_COMPRESSION, BOOT_IMAGE_CODE_END, BOOT_IMAGE_CODE_SIZE, BOOT_IMAGE_CODE_START, BOOT_IMAGE_DATA_END, BOOT_IMAGE_DATA_SIZE, BOOT_IMAGE_DATA_START, BOOT_IMAGE_END, BOOT_IMAGE_RMAP_END, BOOT_IMAGE_RMAP_START, MAX_BOOT_IMAGE_RMAP_SIZE, MAXIMUM_MAPPABLE |
Constructor Summary | |
---|---|
NativeMethod(TypeReference declaringClass,
MemberReference memRef,
short modifiers,
TypeReference[] exceptionTypes,
Atom signature,
RVMAnnotation[] annotations,
RVMAnnotation[][] parameterAnnotations,
Object annotationDefault)
Construct native method information |
Method Summary | |
---|---|
protected CompiledMethod |
genCode()
Generate the code for this method |
private String |
getMangledName(boolean sig)
Compute the mangled name of the native routine: Java_Class_Method_Sig |
Address |
getNativeIP()
Get the native IP for this method |
Address |
getNativeTOC()
get the native TOC for this method |
void |
registerNativeSymbol(Address symbolAddress)
Registers a native method |
private String |
replaceCharWithString(String originalString,
char targetChar,
String replaceString)
replace a character in a string with a string |
private boolean |
resolveNativeMethod()
|
void |
unregisterNativeSymbol()
Unregisters a native method |
Methods inherited from class org.jikesrvm.classloader.RVMMember |
---|
getDeclaringClass, getDescriptor, getId, getMemberRef, getModifiers, getName, getOffset, getSignature, hashCode, hasOffset, isPrivate, isProtected, isPublic, setOffset, toString |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
private Address nativeIP
private Address nativeTOC
Constructor Detail |
---|
NativeMethod(TypeReference declaringClass, MemberReference memRef, short modifiers, TypeReference[] exceptionTypes, Atom signature, RVMAnnotation[] annotations, RVMAnnotation[][] parameterAnnotations, Object annotationDefault)
declaringClass
- the RVMClass object of the class that
declared this method.memRef
- the canonical memberReference for this member.modifiers
- modifiers associated with this member.exceptionTypes
- exceptions thrown by this method.signature
- generic type of this method.annotations
- array of runtime visible annotationsparameterAnnotations
- array of runtime visible parameter annotationsannotationDefault
- value for this annotation that appearsMethod Detail |
---|
protected CompiledMethod genCode()
RVMMethod
genCode
in class RVMMethod
public Address getNativeIP()
public Address getNativeTOC()
private String replaceCharWithString(String originalString, char targetChar, String replaceString)
private String getMangledName(boolean sig)
private boolean resolveNativeMethod()
public void registerNativeSymbol(Address symbolAddress)
symbolAddress
- address of native function that implements the methodpublic void unregisterNativeSymbol()
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |