org.jikesrvm.compilers.opt.specialization
Class SpecializedMethodPool

java.lang.Object
  extended by org.jikesrvm.compilers.opt.specialization.SpecializedMethodPool

public final class SpecializedMethodPool
extends Object

This class holds the static array of pointers to instructions of specialized methods


Field Summary
private static int SPECIALIZED_METHOD_COUNT
           
(package private) static int specializedMethodCount
           
(package private) static ArchitectureSpecific.CodeArray[] specializedMethods
           
 
Constructor Summary
SpecializedMethodPool()
           
 
Method Summary
static int createSpecializedMethodID()
           
 int getSpecializedMethodCount()
          Return the number of specialized methods
static void growSpecializedMethods()
          Increase the capacity of the internal data structures to track specialized methods.
static boolean hasCompiledVersion(int smid)
          Is there a compiled version of a particular specialized method?
(package private) static void registerCompiledMethod(SpecializedMethod m)
          Register the specialized instructions for a method.
static void storeSpecializedMethod(CompiledMethod cm, int smid)
          Associate a particular compiled method with a specialized method id.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

SPECIALIZED_METHOD_COUNT

private static final int SPECIALIZED_METHOD_COUNT
See Also:
Constant Field Values

specializedMethodCount

static int specializedMethodCount

specializedMethods

static ArchitectureSpecific.CodeArray[] specializedMethods
Constructor Detail

SpecializedMethodPool

public SpecializedMethodPool()
Method Detail

getSpecializedMethodCount

public int getSpecializedMethodCount()
Return the number of specialized methods


registerCompiledMethod

static void registerCompiledMethod(SpecializedMethod m)
Register the specialized instructions for a method.


storeSpecializedMethod

public static void storeSpecializedMethod(CompiledMethod cm,
                                          int smid)
Associate a particular compiled method with a specialized method id.


hasCompiledVersion

public static boolean hasCompiledVersion(int smid)
Is there a compiled version of a particular specialized method?

Parameters:
smid -

createSpecializedMethodID

public static int createSpecializedMethodID()
Returns:
a new unique integer identifier for a specialized method

growSpecializedMethods

public static void growSpecializedMethods()
Increase the capacity of the internal data structures to track specialized methods.