harpoon.Analysis.SizeOpt
Class FieldReducer

java.lang.Object
  extended by harpoon.Analysis.Transformation.MethodMutator<Quad>
      extended by harpoon.Analysis.SizeOpt.FieldReducer
All Implemented Interfaces:
Serializable

public class FieldReducer
extends MethodMutator<Quad>

The FieldReducer code factory uses the results of a BitWidthAnalysis to shrink field types and eliminate unused and constant fields from objects.

Version:
$Id: FieldReducer.java,v 1.8 2004/02/08 03:20:22 cananian Exp $
Author:
C. Scott Ananian <cananian@alumni.princeton.edu>
See Also:
Serialized Form

Constructor Summary
FieldReducer(HCodeFactory parent, Frame frame, ClassHierarchy ch, Set roots, String fieldRootResourceName)
          Creates a FieldReducer.
 
Method Summary
 HCodeFactory codeFactory()
          Returns a HCodeFactory containing representations for the methods altered by the MethodMutator.
protected  HCode<Quad> mutateHCode(HCodeAndMaps<Quad> input)
          Override this method to effect transformations on split methods.
 
Methods inherited from class harpoon.Analysis.Transformation.MethodMutator
cloneHCode, mutateCodeName
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

FieldReducer

public FieldReducer(HCodeFactory parent,
                    Frame frame,
                    ClassHierarchy ch,
                    Set roots,
                    String fieldRootResourceName)
Creates a FieldReducer.

Method Detail

codeFactory

public HCodeFactory codeFactory()
Description copied from class: MethodMutator
Returns a HCodeFactory containing representations for the methods altered by the MethodMutator.

Overrides:
codeFactory in class MethodMutator<Quad>

mutateHCode

protected HCode<Quad> mutateHCode(HCodeAndMaps<Quad> input)
Description copied from class: MethodMutator
Override this method to effect transformations on split methods.

Overrides:
mutateHCode in class MethodMutator<Quad>