|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.jikesrvm.compilers.opt.instrsched.ResourceMap
final class ResourceMap
Resource usage map representation Used by the scheduler to accommodate resource patterns
OperatorClass
,
Operator
Field Summary | |
---|---|
private int[] |
rumap
GROWABLE Resource Usage map. |
private int |
size
Current size of the RU map. |
private static int |
VERBOSE
|
Constructor Summary | |
---|---|
ResourceMap()
Creates new resource map. |
|
ResourceMap(int length)
Creates new resource map with desired initial length. |
Method Summary | |
---|---|
private static void |
debug(String s)
|
private void |
grow(int s)
Grows the RU map to a given size. |
boolean |
schedule(Instruction i,
int time)
Reserves resources for given instruction at given time. |
private boolean |
schedule(int[] usage,
int time)
Binds resources for given resource usage pattern at given time. |
private static String |
toBinaryPad32(int value)
|
String |
toString()
Returns a string representation of the resource map. |
void |
unschedule(Instruction i)
Frees resources for given instruction. |
private void |
unschedule(int[] usage,
int time)
Unbinds resources for given resource usage pattern at given time. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
private static final int VERBOSE
private int[] rumap
private int size
Constructor Detail |
---|
public ResourceMap()
public ResourceMap(int length)
length
- desired initial length of the resource mapMethod Detail |
---|
private static void debug(String s)
private static String toBinaryPad32(int value)
private void grow(int s)
public boolean schedule(Instruction i, int time)
i
- instructiontime
- time to schedule
unschedule(Instruction)
public void unschedule(Instruction i)
i
- instructionschedule(Instruction,int)
public String toString()
toString
in class Object
private boolean schedule(int[] usage, int time)
usage
- time
-
false
if there's a resource conflict, true
otherwiseprivate void unschedule(int[] usage, int time)
usage
- time
-
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |