|
|||||||||
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.Assem s,
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()
Frame
Linker
object to use when compiling for this
Frame
.
getLinker
in class Frame
public 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()
Frame
Generic.Runtime
for
this Frame
.
getRuntime
in class Frame
public boolean pointersAreLong()
Frame
false
if pointers can be represented in
32 bits, or true
otherwise.
pointersAreLong
in class Frame
public 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 Frame
public InstrBuilder getInstrBuilder()
getInstrBuilder
in class Frame
public TempBuilder getTempBuilder()
getTempBuilder
in class Frame
public LocationFactory getLocationFactory()
getLocationFactory
in class Frame
public RegFileInfo getRegFileInfo()
getRegFileInfo
in class Frame
public GCInfo getGCInfo()
Tree
interpreter support GCInfo
, so
getGCInfo
will always return null.
getGCInfo
in class Frame
public HCodeFactory getCodeFactory(HCodeFactory hcf)
Frame
IR.Assem
s,
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.Instr
s.
getCodeFactory
in class Frame
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |