|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.jikesrvm.MachineSpecific
org.jikesrvm.ia32.MachineSpecificIA
public abstract class MachineSpecificIA
Wrappers around IA32-specific code common to both 32 & 64 bit
| Nested Class Summary | |
|---|---|
static class |
MachineSpecificIA.EM64T
Wrappers around EMT64-specific code (64-bit specific) |
static class |
MachineSpecificIA.IA32
Wrappers around IA32-specific code (32-bit specific) |
| Nested classes/interfaces inherited from interface org.jikesrvm.ia32.RegisterConstants |
|---|
RegisterConstants.FPR, RegisterConstants.GPR, RegisterConstants.MachineRegister, RegisterConstants.MM, RegisterConstants.XMM |
| Field Summary | |
|---|---|
(package private) static int |
FPUControlWord
A well-known memory location used to manipulate the FPU control word. |
| Fields inherited from interface org.jikesrvm.ia32.ArchConstants |
|---|
SSE2_BASE, SSE2_FULL |
| Fields inherited from interface org.jikesrvm.ia32.RegisterConstants |
|---|
EAX, EBP, EBX, ECX, EDI, EDX, ESI, ESP, FP0, FP1, FP2, FP3, FP4, FP5, FP6, FP7, INSTRUCTION_WIDTH, LG_INSTRUCTION_WIDTH, MM0, MM1, MM10, MM11, MM12, MM13, MM14, MM15, MM2, MM3, MM4, MM5, MM6, MM7, MM8, MM9, NONVOLATILE_FPRS, NONVOLATILE_GPRS, NUM_FPRS, NUM_GPRS, NUM_NONVOLATILE_FPRS, NUM_NONVOLATILE_GPRS, NUM_PARAMETER_FPRS, NUM_PARAMETER_GPRS, NUM_RETURN_FPRS, NUM_RETURN_GPRS, NUM_VOLATILE_FPRS, NUM_VOLATILE_GPRS, PROCESSOR_REGISTER, R0, R1, R10, R11, R12, R13, R14, R15, R2, R3, R4, R5, R6, R7, R8, R9, STACK_POINTER, SYSCALL_PARAM_FPRS, SYSCALL_PARAM_GPRS, VOLATILE_FPRS, VOLATILE_GPRS, XMM0, XMM1, XMM10, XMM11, XMM12, XMM13, XMM14, XMM15, XMM2, XMM3, XMM4, XMM5, XMM6, XMM7, XMM8, XMM9 |
| Fields inherited from interface org.jikesrvm.ia32.TrapConstants |
|---|
RVM_TRAP_BASE |
| Constructor Summary | |
|---|---|
MachineSpecificIA()
|
|
| Method Summary | |
|---|---|
void |
adjustESP(ArchitectureSpecific.Registers registers,
Offset delta,
boolean traceAdjustments)
A thread's stack has been moved or resized. |
void |
baselineEmitLoadTIB(ArchitectureSpecific.Assembler asm,
int dest,
int object,
Offset tibOffset)
The following method will emit code that moves a reference to an object's TIB into a destination register. |
void |
initializeStack(ArchitectureSpecific.Registers contextRegisters,
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 |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
static int FPUControlWord
| Constructor Detail |
|---|
public MachineSpecificIA()
| Method Detail |
|---|
public final void baselineEmitLoadTIB(ArchitectureSpecific.Assembler asm,
int dest,
int object,
Offset tibOffset)
baselineEmitLoadTIB in class MachineSpecificasm - the assembler object to emit code withdest - the number of the destination registerobject - the number of the register holding the object referencetibOffset - the offset of the tib from the object header
public final void initializeStack(ArchitectureSpecific.Registers contextRegisters,
Address ip,
Address sp)
initializeStack in class MachineSpecificcontextRegisters - The context registers for this threadip - The instruction pointer for the "startoff" methodsp - The base of the stack
public final void adjustESP(ArchitectureSpecific.Registers registers,
Offset delta,
boolean traceAdjustments)
adjustESP in class MachineSpecificregisters - The registers for this threaddelta - The displacement to be appliedtraceAdjustments - Log all adjustments to stderr if true
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||