harpoon.Analysis.PreciseGC
Class WriteBarrierPrePass

java.lang.Object
  extended by harpoon.Analysis.Transformation.MethodMutator
      extended by harpoon.Analysis.PreciseGC.WriteBarrierPrePass
All Implemented Interfaces:
Serializable

public class WriteBarrierPrePass
extends MethodMutator

WriteBarrierPrePass takes code in LowQuad form and inserts a fake call to a write barrier that is later replaced with a real implementation in WriteBarrierPostPass.

Version:
$Id: WriteBarrierPrePass.java,v 1.2 2002/02/25 20:58:54 cananian Exp $
Author:
Karen Zee <kkz@tmi.lcs.mit.edu>
See Also:
Serialized Form

Constructor Summary
WriteBarrierPrePass(HCodeFactory parent, Linker linker)
          Creates a WriteBarrierPrePass.
 
Method Summary
protected  HCode mutateHCode(HCodeAndMaps input)
          Override this method to effect transformations on split methods.
 HCodeFactory treeCodeFactory(Frame f, HCodeFactory hcf)
          Return an HCodeFactory that will clean up the tree form of the transformed code by performing some optimizations which can't be represented in quad form.
 
Methods inherited from class harpoon.Analysis.Transformation.MethodMutator
cloneHCode, codeFactory, mutateCodeName
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

WriteBarrierPrePass

public WriteBarrierPrePass(HCodeFactory parent,
                           Linker linker)
Creates a WriteBarrierPrePass.

Method Detail

mutateHCode

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

Overrides:
mutateHCode in class MethodMutator

treeCodeFactory

public HCodeFactory treeCodeFactory(Frame f,
                                    HCodeFactory hcf)
Return an HCodeFactory that will clean up the tree form of the transformed code by performing some optimizations which can't be represented in quad form.