harpoon.IR.Quads
Class QuadRSSx
java.lang.Object
harpoon.ClassFile.HCode<Quad>
harpoon.IR.Quads.Code
harpoon.IR.Quads.QuadRSSx
- All Implemented Interfaces:
- Graph<Quad,Edge>, Serializable
- Direct Known Subclasses:
- ContCode
public class QuadRSSx
- extends Code
Quads.QuadRSSx
is a code view in relaxed SSI form.
Quad form exposes the details of
the java classfile bytecodes in a pseudo-quadruple format. Implementation
details of the stack-based JVM are hidden in favor of a flat consistent
temporary-variable based approach. The generated quadruples adhere
to an QuadNoSSA form (that is, there are no contraints on variable
definitions/re-definitions); but PHI
and SIGMA
functions are allowed. PHI
and SIGMA
nodes
behave semantically as their no-ssa conversion; that is, execution
proceeds as if there were implicit MOVE
s on the edges
leading to/coming from the PHI
/SIGMA
nodes.
- Version:
- $Id: QuadRSSx.java,v 1.3 2002/09/01 07:47:20 cananian Exp $
- Author:
- Brian Demsky <bdemsky@mit.edu>
- See Also:
- Serialized Form
Constructor Summary |
protected |
QuadRSSx(HMethod parent,
Quad quads)
Create a new code object given a quadruple representation
of the method instructions. |
Methods inherited from class harpoon.IR.Quads.Code |
cloneHelper, cloneHelper, elementArrayFactory, getAllocationInformation, getDerivation, getElements, getElementsI, getLeafElements, getMethod, getRootElement, newQF, nodes, notifyReplace, print, selectAllocations, selectCALLs, selectQuads, setAllocationInformation |
codename
public static final String codename
- The name of this code view.
- See Also:
- Constant Field Values
QuadRSSx
protected QuadRSSx(HMethod parent,
Quad quads)
- Create a new code object given a quadruple representation
of the method instructions.
clone
public HCodeAndMaps<Quad> clone(HMethod newMethod)
- Clone this code representation. The clone has its own
copy of the quad graph.
- Specified by:
clone
in class Code
getName
public String getName()
- Return the name of this code view.
- Specified by:
getName
in class Code
- Returns:
- the string
"relaxed-quad-ssi"
.
codeFactory
public static HCodeFactory codeFactory(HCodeFactory hcf)
- Return a code factory for
QuadRSSx
, given a code
factory for QuadNoSSA
or QuadSSI
.