harpoon.Analysis.LowQuad.Loop
Class MyLowQuadSSI
java.lang.Object
harpoon.ClassFile.HCode<Quad>
harpoon.IR.Quads.Code
harpoon.IR.LowQuad.Code
harpoon.IR.LowQuad.LowQuadSSI
harpoon.Analysis.LowQuad.Loop.MyLowQuadSSI
- All Implemented Interfaces:
- Derivation<Quad>, TypeMap<Quad>, Graph<Quad,Edge>, Serializable
public class MyLowQuadSSI
- extends LowQuadSSI
- implements Derivation<Quad>
MyLowQuadSSI
- Version:
- $Id: MyLowQuadSSI.java,v 1.5 2003/03/11 18:22:36 cananian Exp $
- Author:
- Brian Demsky <bdemsky@mit.edu>
- See Also:
- Serialized Form
Methods inherited from class harpoon.IR.Quads.Code |
cloneHelper, elementArrayFactory, getAllocationInformation, getElements, getElementsI, getLeafElements, getMethod, getRootElement, nodes, notifyReplace, print, selectAllocations, selectCALLs, selectQuads, setAllocationInformation |
codename
public static final String codename
- See Also:
- Constant Field Values
quadMap
public Quad quadMap(Quad q)
addQuadMapping
public void addQuadMapping(Quad oldquad,
Quad newquad)
tempMap
public Temp tempMap(Temp t)
addDerivation
public void addDerivation(Temp t,
Derivation.DList dlist)
derivation
public Derivation.DList derivation(Quad hce,
Temp t)
- Description copied from interface:
Derivation
- Map compiler temporaries to their derivations.
- Specified by:
derivation
in interface Derivation<Quad>
- Parameters:
hce
- A definition point for t
.t
- The temporary to query.
- Returns:
null
if the temporary has no derivation (is
a base pointer, for example), or the derivation otherwise.
addType
public void addType(Temp t,
HClass type)
typeMap
public HClass typeMap(Quad hce,
Temp t)
- Description copied from interface:
TypeMap
- Return the type of a given temporary
t
, as defined
at the definition point hce
. Iff the type of the
temporary is not known, or if hce
does not define
t
, throws TypeNotKnownException
. If
the temporary represents a derived pointer, null
should be returned; in which case the Derivation
must return a non-null
value. Obviously,
TypeMap
s for high-level representations without
derived pointers should never return null
. As a
special case, HClass.Void
may be returned in
low-level IRs to indicate an opaque pointer value which does
not correspond to a java object pointer or some
derivation thereof --- for example, a pointer into a method
dispatch table. The only other time HClass.Void
should be returned is for known-null
pointer values.
- Specified by:
typeMap
in interface TypeMap<Quad>
- Parameters:
hce
- The HCodeElement
defining t
.t
- The temporary to examine.
- Returns:
- the static type of
t
.
clone
public HCodeAndMaps<Quad> clone(HMethod newMethod)
- Description copied from class:
LowQuadSSI
- Clone this code representation. The clone has its own copy of the
quad graph.
WARNING: does not preserve derivation or allocation info.
- Overrides:
clone
in class LowQuadSSI
getName
public String getName()
- Description copied from class:
LowQuadSSI
- Return the name of this code view.
- Overrides:
getName
in class LowQuadSSI
- Returns:
- the string
"low-quad-ssi"