java.lang.Object
com.ibm.j9ddr.vm29.view.dtfj.java.DTFJJavaStackFrame
- All Implemented Interfaces:
JavaLocation,JavaStackFrame
Combined JavaStackFrame invalid input: '&' JavaLocation
-
Constructor Summary
ConstructorsConstructorDescriptionDTFJJavaStackFrame(DTFJJavaThread dtfjJavaThread, DTFJJavaMethod dtfjMethod, com.ibm.j9ddr.vm29.pointer.generated.J9MethodPointer method, ImagePointer pc, ImagePointer basePointer, U8Pointer bytecodePCOffset, boolean jitted) -
Method Summary
Modifier and TypeMethodDescriptionbooleanCompares the argument to the receiver, and answers true if they represent the same object using a class specific comparison.Fetches the absolute address of the code which this location represents.Get a pointer to the base of this stack frameintGet the compilation level for this location.Get the source file name.Get the set of object roots from this stack frame.intGet the line number.Get the location at which the method owning this frame is currently executingGet the method which contains the point of execution.inthashCode()Answers an integer hash code for the receiver.toString()Answers a string containing a concise, human-readable description of the receiver.
-
Constructor Details
-
DTFJJavaStackFrame
public DTFJJavaStackFrame(DTFJJavaThread dtfjJavaThread, DTFJJavaMethod dtfjMethod, com.ibm.j9ddr.vm29.pointer.generated.J9MethodPointer method, ImagePointer pc, ImagePointer basePointer, U8Pointer bytecodePCOffset, boolean jitted)
-
-
Method Details
-
getBasePointer
Description copied from interface:JavaStackFrameGet a pointer to the base of this stack frame- Specified by:
getBasePointerin interfaceJavaStackFrame- Returns:
- the base pointer of the stack frame
- Throws:
CorruptDataException
-
getHeapRoots
Description copied from interface:JavaStackFrameGet the set of object roots from this stack frame.- Specified by:
getHeapRootsin interfaceJavaStackFrame- Returns:
- an iterator of JavaReferences
-
getLocation
Description copied from interface:JavaStackFrameGet the location at which the method owning this frame is currently executing- Specified by:
getLocationin interfaceJavaStackFrame- Returns:
- a location object describing where the frame is executing
- Throws:
CorruptDataException- See Also:
-
getAddress
Description copied from interface:JavaLocationFetches the absolute address of the code which this location represents. This pointer will be contained within one of the segments returned by getBytecodeSections() or getCompiledSections() of the method returned by getMethod().null may be returned, particularly for methods with no bytecode or compiled sections (e.g. some native methods)
Although an offset into the method may be calculated using this pointer, caution should be exercised in attempting to map this offset to an offset within the original class file. Various transformations may have been applied to the bytecodes by the VM or other agents which may make the offset difficult to interpret.
For native methods, the address may be meaningless.
- Specified by:
getAddressin interfaceJavaLocation- Returns:
- the address in memory of the managed code
- Throws:
CorruptDataException
-
getCompilationLevel
Description copied from interface:JavaLocationGet the compilation level for this location. This is an implementation defined number indicating the level at which the current location was compiled. 0 indicates interpreted. Any positive number indicates some level of JIT compilation. Typically, higher numbers indicate more aggressive compilation strategiesFor native methods, a non-zero compilation level indicates that some level of JIT compilation has been applied to the native call (e.g. a custom native call stub). To determine if the method is native, use getMethod().getModifiers().
- Specified by:
getCompilationLevelin interfaceJavaLocation- Returns:
- the compilation level
- Throws:
CorruptDataException
-
getFilename
Description copied from interface:JavaLocationGet the source file name.- Specified by:
getFilenamein interfaceJavaLocation- Returns:
- the name of the source file, if available, or throws DataUnavailable if it is not available
- Throws:
DataUnavailable- if the source file name is unavailable in the coreCorruptDataException
-
getLineNumber
Description copied from interface:JavaLocationGet the line number.- Specified by:
getLineNumberin interfaceJavaLocation- Returns:
- the line number, if available, or throws DataUnavailable if it is not available Line numbers are counted from 1
- Throws:
DataUnavailable- if the line number data is not available for this locationCorruptDataException
-
getMethod
Description copied from interface:JavaLocationGet the method which contains the point of execution.- Specified by:
getMethodin interfaceJavaLocation- Returns:
- the method which contains the point of execution
- Throws:
CorruptDataException
-
equals
Description copied from class:java.lang.ObjectCompares the argument to the receiver, and answers true if they represent the same object using a class specific comparison. The implementation in Object answers true only if the argument is the exact same object as the receiver (==).- Specified by:
equalsin interfaceJavaLocation- Specified by:
equalsin interfaceJavaStackFrame- Overrides:
equalsin classObject- Parameters:
obj- Object the object to compare with this object.- Returns:
- boolean
trueif the object is the same as this objectfalseif it is different from this object. - See Also:
-
hashCode
public int hashCode()Description copied from class:java.lang.ObjectAnswers an integer hash code for the receiver. Any two objects which answertruewhen passed to.equalsmust answer the same value for this method.- Specified by:
hashCodein interfaceJavaLocation- Specified by:
hashCodein interfaceJavaStackFrame- Overrides:
hashCodein classObject- Returns:
- the receiver's hash.
- See Also:
-
toString
Description copied from class:java.lang.ObjectAnswers a string containing a concise, human-readable description of the receiver.- Specified by:
toStringin interfaceJavaLocation- Overrides:
toStringin classObject- Returns:
- String a printable representation for the receiver.
-