|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectharpoon.Backend.Generic.Frame
harpoon.Interpret.Tree.DefaultFrame
public class DefaultFrame
The DefaultFrame class implements the abstract methods of the Frame class. It is intended mostly for testing purposes, and will have to be fixed up a bit if needed for general use.
| Constructor Summary | |
|---|---|
DefaultFrame(HMethod main,
ClassHierarchy ch,
harpoon.Interpret.Tree.OffsetMap map,
harpoon.Interpret.Tree.AllocationStrategy st)
|
|
| Method Summary | |
|---|---|
Label |
exitOutOfMemory()
Returns the label of a function which exits with an out of memory error |
Label |
GC()
Returns the label of the garbage collection function |
HCodeFactory |
getCodeFactory(HCodeFactory hcf)
Returns a code factory for machine-specific IR.Assems,
given a code factory for CanonicalTreeCode. |
CodeGen |
getCodeGen()
Not implemented. |
GCInfo |
getGCInfo()
There are no plans to ever have the Tree
interpreter support GCInfo, so
getGCInfo will always return null. |
InstrBuilder |
getInstrBuilder()
Stub added by FSK. |
Linker |
getLinker()
The Linker object to use when compiling for this
Frame. |
LocationFactory |
getLocationFactory()
Stub added by CSA. |
Temp |
getMemLimit()
Returns a pointer to the highest available address in memory. |
Temp |
getNextPtr()
Returns a pointer to the next free address in memory |
harpoon.Interpret.Tree.OffsetMap |
getOffsetMap()
|
RegFileInfo |
getRegFileInfo()
Stub added by FSK. |
Runtime |
getRuntime()
Returns the appropriate Generic.Runtime for
this Frame. |
TempBuilder |
getTempBuilder()
Stub added by FSK. |
Exp |
memAlloc(Exp size)
Returns a Tree.Exp object which represents a pointer
to a newly allocated block of memory, of the specified size. |
boolean |
pointersAreLong()
Returns false if pointers can be represented in
32 bits, or true otherwise. |
Instr |
procAssemDirectives(Instr body)
|
Instr |
procLiveOnExit(Instr body)
|
Stm |
procPrologue(TreeFactory tf,
HCodeElement src,
Temp[] paramdsts,
int[] paramtypes)
|
TempFactory |
tempFactory()
|
| Methods inherited from class harpoon.Backend.Generic.Frame |
|---|
setCallGraph, setClassHierarchy |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public DefaultFrame(HMethod main,
ClassHierarchy ch,
harpoon.Interpret.Tree.OffsetMap map,
harpoon.Interpret.Tree.AllocationStrategy st)
| Method Detail |
|---|
public Linker getLinker()
FrameLinker object to use when compiling for this
Frame.
getLinker in class Framepublic Exp memAlloc(Exp size)
Tree.Exp object which represents a pointer
to a newly allocated block of memory, of the specified size.
Generates code to handle garbage collection, and OutOfMemory errors.
public harpoon.Interpret.Tree.OffsetMap getOffsetMap()
public Runtime getRuntime()
FrameGeneric.Runtime for
this Frame.
getRuntime in class Framepublic boolean pointersAreLong()
Framefalse if pointers can be represented in
32 bits, or true otherwise.
pointersAreLong in class Framepublic TempFactory tempFactory()
public Stm procPrologue(TreeFactory tf,
HCodeElement src,
Temp[] paramdsts,
int[] paramtypes)
public Instr procLiveOnExit(Instr body)
public Instr procAssemDirectives(Instr body)
public Label exitOutOfMemory()
public Label GC()
public Temp getMemLimit()
public Temp getNextPtr()
public CodeGen getCodeGen()
getCodeGen in class Framepublic InstrBuilder getInstrBuilder()
getInstrBuilder in class Framepublic TempBuilder getTempBuilder()
getTempBuilder in class Framepublic LocationFactory getLocationFactory()
getLocationFactory in class Framepublic RegFileInfo getRegFileInfo()
getRegFileInfo in class Framepublic GCInfo getGCInfo()
Tree
interpreter support GCInfo, so
getGCInfo will always return null.
getGCInfo in class Framepublic HCodeFactory getCodeFactory(HCodeFactory hcf)
FrameIR.Assems,
given a code factory for CanonicalTreeCode. Uses
the code generator defined by this frame. Returns null
if this frame does not have a code factory that generates
IR.Assem.Instrs.
getCodeFactory in class Frame
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||