harpoon.IR.LowQuad
Class POPER

java.lang.Object
  extended by harpoon.IR.Quads.Quad
      extended by harpoon.IR.Quads.OPER
          extended by harpoon.IR.LowQuad.POPER
All Implemented Interfaces:
HCodeElement, CFGraphable<Quad,Edge>, UseDefable, Graph.Node<Quad,Edge>, Serializable, Cloneable, Comparable<Quad>

public class POPER
extends OPER

POPER is an extended version of harpoon.IR.Quads.OPER, with new opcodes defined in LQop.

Version:
$Id: POPER.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
 
Fields inherited from class harpoon.IR.Quads.OPER
dst, opcode, operands
 
Fields inherited from class harpoon.IR.Quads.Quad
arrayFactory
 
Constructor Summary
POPER(LowQuadFactory qf, HCodeElement source, int opcode, Temp dst, Temp[] operands)
          Creates a POPER.
 
Method Summary
 void accept(QuadVisitor v)
          Accept a visitor.
 HClass evalType()
          Determines the result type of an OPER.
 Object evalValue(Object[] opvalues)
          Evaluates a constant value for the result of an OPER, given constant values for the operands.
 int kind()
          Return an integer enumeration of the kind of this Quad.
 Quad rename(QuadFactory qf, TempMap defMap, TempMap useMap)
          Create a new Quad identical to the receiver, but with all Temps renamed according to a mapping.
 String toString()
          Returns a human-readable representation of this Quad.
 
Methods inherited from class harpoon.IR.Quads.OPER
accept, accept, def, dst, opcode, operands, operands, operandsLength, use
 
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, map, map, map, next, next, nextEdge, nextEdge, nextLength, pred, predC, prev, prev, prevEdge, prevEdge, prevLength, remove, removeHandlers, rename, replace, succ, succC, toLongString, transferHandlers, useC
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

POPER

public POPER(LowQuadFactory qf,
             HCodeElement source,
             int opcode,
             Temp dst,
             Temp[] operands)
Creates a POPER.

Method Detail

kind

public int kind()
Description copied from class: Quad
Return an integer enumeration of the kind of this Quad. The enumerated values are defined in QuadKind.

Overrides:
kind in class OPER

rename

public Quad rename(QuadFactory qf,
                   TempMap defMap,
                   TempMap useMap)
Description copied from class: Quad
Create a new Quad identical to the receiver, but with all Temps renamed according to a mapping. The new Quad will have no edges.

The new Quad will come from the specified QuadFactory.

Overrides:
rename in class OPER

accept

public void accept(QuadVisitor v)
Description copied from class: Quad
Accept a visitor.

Overrides:
accept in class OPER

toString

public String toString()
Returns a human-readable representation of this Quad.

Overrides:
toString in class OPER

evalType

public HClass evalType()
Determines the result type of an OPER.

Overrides:
evalType in class OPER

evalValue

public Object evalValue(Object[] opvalues)
Evaluates a constant value for the result of an OPER, given constant values for the operands.

Overrides:
evalValue in class OPER