harpoon.IR.LowQuad
Class PPTR

java.lang.Object
  extended by harpoon.IR.Quads.Quad
      extended by harpoon.IR.LowQuad.LowQuad
          extended by harpoon.IR.LowQuad.PPTR
All Implemented Interfaces:
HCodeElement, CFGraphable<Quad,Edge>, UseDefable, Graph.Node<Quad,Edge>, Serializable, Cloneable, Comparable<Quad>
Direct Known Subclasses:
PARRAY, PFIELD, PMETHOD

public abstract class PPTR
extends LowQuad

PPTR is an abstract superclass of the LowQuads that convert object references into POINTER types. We allow arithmetic only on POINTERs.

Version:
$Id: PPTR.java,v 1.4 2002/04/10 03:04:57 cananian Exp $
Author:
C. Scott Ananian <cananian@alumni.princeton.edu>
See Also:
Serialized Form

Field Summary
protected  Temp dst
          The Temp in which to store the computed POINTER value.
protected  Temp objectref
          The Temp holding the object reference to convert.
 
Fields inherited from class harpoon.IR.Quads.Quad
arrayFactory
 
Constructor Summary
PPTR(LowQuadFactory qf, HCodeElement source, Temp dst, Temp objectref)
          Creates a PPTR.
 
Method Summary
 Temp[] def()
          Return all the Temps defined by this Quad.
 Temp dst()
          Returns the Temp in which to store the computed POINTER value.
 Temp objectref()
          Returns the Temp containing the object reference to convert into a POINTER.
 Temp[] use()
          Return all the Temps used by this Quad.
 
Methods inherited from class harpoon.IR.LowQuad.LowQuad
accept, accept
 
Methods inherited from class harpoon.IR.Quads.Quad
addEdge, addEdges, addHandlers, clone, clone, clone, compareTo, defC, edgeC, edges, getFactory, getID, getLineNumber, getSourceFile, handlers, hashCode, isPred, isSucc, kind, map, map, map, next, next, nextEdge, nextEdge, nextLength, pred, predC, prev, prev, prevEdge, prevEdge, prevLength, remove, removeHandlers, rename, rename, replace, succ, succC, toLongString, toString, transferHandlers, useC
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

dst

protected final Temp dst
The Temp in which to store the computed POINTER value.


objectref

protected final Temp objectref
The Temp holding the object reference to convert.

Constructor Detail

PPTR

public PPTR(LowQuadFactory qf,
            HCodeElement source,
            Temp dst,
            Temp objectref)
Creates a PPTR.

Method Detail

dst

public Temp dst()
Returns the Temp in which to store the computed POINTER value.


objectref

public Temp objectref()
Returns the Temp containing the object reference to convert into a POINTER.


use

public Temp[] use()
Description copied from class: Quad
Return all the Temps used by this Quad.

Specified by:
use in interface UseDefable
Overrides:
use in class Quad

def

public Temp[] def()
Description copied from class: Quad
Return all the Temps defined by this Quad.

Specified by:
def in interface UseDefable
Overrides:
def in class Quad