harpoon.Backend.Runtime2
Class TreeBuilder

java.lang.Object
  |
  +--harpoon.Backend.Generic.Runtime.TreeBuilder
        |
        +--harpoon.Backend.Runtime1.TreeBuilder
              |
              +--harpoon.Backend.Runtime2.TreeBuilder

public class TreeBuilder
extends TreeBuilder

Runtime2.TreeBuilder is an implementation of Generic.Runtime.TreeBuilder which creates accessor expressions for the Runtime1 runtime.

Pretty straightforward. No weird hacks.

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

Field Summary
 
Fields inherited from class harpoon.Backend.Runtime1.TreeBuilder
cdm, cfm, CLAZ_CLAZINFO, CLAZ_COMPONENT_OFF, CLAZ_DEPTH_OFF, CLAZ_DISPLAY_OFF, CLAZ_GCENTRY_OFF, CLAZ_INTERFACES_OFF, CLAZ_INTERFZ_OFF, CLAZ_METHODS_OFF, CLAZ_SIZE_OFF, cmm, imm, linker, LONG_WORD_SIZE, OBJ_ALENGTH_OFF, OBJ_AZERO_OFF, OBJ_CLAZ_OFF, OBJ_FZERO_OFF, OBJ_HASH_OFF, OBJECT_HEADER_SIZE, POINTER_SIZE, runtime, WORD_SIZE
 
Constructor Summary
protected TreeBuilder(Runtime runtime, Linker linker, AllocationStrategy as, boolean pointersAreLong, int pointerAlignment)
           
 
Method Summary
 Translation.Exp monitorEnter(TreeFactory tf, HCodeElement source, DerivationGenerator dg, Translation.Exp objectref)
          Return a Translation.Exp which acquires the monitor lock of the object specified by the given expression.
 Translation.Exp monitorExit(TreeFactory tf, HCodeElement source, DerivationGenerator dg, Translation.Exp objectref)
          Return a Translation.Exp which releases the monitor lock of the object specified by the given expression.
 Exp objAlloc(TreeFactory tf, HCodeElement source, DerivationGenerator dg, AllocationInformation.AllocationProperties ap, HClass objectType, Exp length)
           
 
Methods inherited from class harpoon.Backend.Runtime1.TreeBuilder
arrayBase, arrayLength, arrayNew, arrayOffset, classConst, componentOf, DECLARE, DECLARE, DECLARE, fieldBase, fieldConst, fieldOffset, headerSize, instanceOf, methodBase, methodConst, methodOffset, objectNew, objectSize, PTRMASK, referenceEqual, setClassHierarchy, stringConst
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

TreeBuilder

protected TreeBuilder(Runtime runtime,
                      Linker linker,
                      AllocationStrategy as,
                      boolean pointersAreLong,
                      int pointerAlignment)
Method Detail

objAlloc

public Exp objAlloc(TreeFactory tf,
                    HCodeElement source,
                    DerivationGenerator dg,
                    AllocationInformation.AllocationProperties ap,
                    HClass objectType,
                    Exp length)
Overrides:
objAlloc in class TreeBuilder

monitorEnter

public Translation.Exp monitorEnter(TreeFactory tf,
                                    HCodeElement source,
                                    DerivationGenerator dg,
                                    Translation.Exp objectref)
Description copied from class: Runtime.TreeBuilder
Return a Translation.Exp which acquires the monitor lock of the object specified by the given expression.

Overrides:
monitorEnter in class TreeBuilder

monitorExit

public Translation.Exp monitorExit(TreeFactory tf,
                                   HCodeElement source,
                                   DerivationGenerator dg,
                                   Translation.Exp objectref)
Description copied from class: Runtime.TreeBuilder
Return a Translation.Exp which releases the monitor lock of the object specified by the given expression.

Overrides:
monitorExit in class TreeBuilder