harpoon.Analysis.Tree
Class Canonicalize

java.lang.Object
  extended by harpoon.Analysis.Tree.Simplification
      extended by harpoon.Analysis.Tree.Canonicalize

public abstract class Canonicalize
extends Simplification

Canonicalize is an application of Simplification to do pattern-driven tree canonicalization.

Version:
$Id: Canonicalize.java,v 1.2 2002/02/25 21:00:32 cananian Exp $
Author:
C. Scott Ananian <cananian@alumni.princeton.edu>

Nested Class Summary
 
Nested classes/interfaces inherited from class harpoon.Analysis.Tree.Simplification
Simplification.Rule
 
Field Summary
static List RULES
          Default canonicalization rules.
 
Fields inherited from class harpoon.Analysis.Tree.Simplification
_ADD, _ALIGN, _AND, _BINOP, _CALL, _CJUMP, _CMPEQ, _CMPGE, _CMPGT, _CMPLE, _CMPLT, _CMPNE, _CONST, _CONST0, _CONST1, _CONSTm1, _CONSTNULL, _DATUM, _DIV, _ESEQ, _EXPR, _JUMP, _LABEL, _MEM, _METHOD, _MOVE, _MUL, _NAME, _NATIVECALL, _OR, _REM, _RETURN, _SEGMENT, _SEQ, _SHL, _SHR, _TEMP, _THROW, _UNOP, _USHR, _XOR
 
Method Summary
static HCodeFactory codeFactory(HCodeFactory parent)
          Code factory for applying the default set of simplifications to the given tree form.
static boolean containsEseq(Tree t)
          Testing function, for use in assertions that a given tree is canonical.
 
Methods inherited from class harpoon.Analysis.Tree.Simplification
_KIND, _OP, codeFactory, contains, simplify
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

RULES

public static final List RULES
Default canonicalization rules.

Method Detail

codeFactory

public static HCodeFactory codeFactory(HCodeFactory parent)
Code factory for applying the default set of simplifications to the given tree form. Clones the tree before simplifying it in-place.


containsEseq

public static boolean containsEseq(Tree t)
Testing function, for use in assertions that a given tree is canonical.