public final class Registers extends AbstractRegisters
| Modifier and Type | Field and Description |
|---|---|
Address |
fp
Frame pointer
|
ip| Constructor and Description |
|---|
Registers() |
| Modifier and Type | Method and Description |
|---|---|
void |
adjustESP(Offset delta,
boolean traceAdjustments)
A thread's stack has been moved or resized.
|
void |
clear()
Zeroes all registers
|
void |
dump() |
Address |
getInnermostFramePointer() |
Address |
getInnermostInstructionAddress() |
void |
initializeStack(Address ip,
Address sp)
The following method initializes a thread stack as if
"startoff" method had been called by an empty baseline-compiled
"sentinel" frame with one local variable
|
void |
setInnermost()
set ip and fp values to those of the caller. used just prior to entering
sigwait to set fp & ip so that GC will scan the threads stack
starting at the frame of the method that called sigwait.
|
void |
setInnermost(Address newip,
Address newfp)
Sets ip & fp. used to control the stack frame at which a scan of
the stack during GC will start, for ex., the top java frame for
a thread that is blocked in native code during GC.
|
void |
unwindStackFrame()
Updates the machine state as if the stackframe were unwound.
|
getFPRs, getGPRs, getInUse, getIP, getIPLocation, setInUse, setIPpublic Registers()
public void clear()
AbstractRegistersclear in class AbstractRegisterspublic Address getInnermostFramePointer()
getInnermostFramePointer in class AbstractRegisterspublic Address getInnermostInstructionAddress()
getInnermostInstructionAddress in class AbstractRegisterspublic void unwindStackFrame()
unwindStackFrame in class AbstractRegisterspublic void setInnermost(Address newip, Address newfp)
setInnermost in class AbstractRegistersnewip - the new instruction pointernewfp - the new frame pointerpublic void setInnermost()
public void initializeStack(Address ip, Address sp)
initializeStack in class AbstractRegistersip - The instruction pointer for the "startoff" methodsp - The base of the stackpublic void adjustESP(Offset delta, boolean traceAdjustments)
adjustESP in class AbstractRegistersdelta - The displacement to be appliedtraceAdjustments - Log all adjustments to stderr if truepublic void dump()
dump in class AbstractRegisters