|
|||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||
java.lang.Objectorg.jikesrvm.compilers.opt.inlining.InlineDecision
public final class InlineDecision
Instances of this class represent decisions to inline.
| Nested Class Summary | |
|---|---|
private static class |
InlineDecision.Code
|
| Field Summary | |
|---|---|
private InlineDecision.Code |
code
Holds characterization of this decision. |
private byte[] |
guards
The set of guards to use (only valid when code == GUARDED_YES) |
private String |
rationale
Rationale for this decision |
private RVMMethod[] |
targets
The set of methods to inline. |
private boolean |
testFailedOSR
Should the test-failed block be replaced with an OSR point? |
| Constructor Summary | |
|---|---|
private |
InlineDecision(RVMMethod[] targets,
byte[] guards,
InlineDecision.Code code,
String reason)
|
| Method Summary | |
|---|---|
byte[] |
getGuards()
Return the guards to use according to this decision. |
int |
getNumberOfTargets()
Return the number methods to inline. |
RVMMethod[] |
getTargets()
Return the methods to inline according to this decision. |
static InlineDecision |
guardedYES(RVMMethod[] targets,
byte[] guards,
String reason)
Return a decision YES to do a guarded inline. |
static InlineDecision |
guardedYES(RVMMethod target,
byte guard,
String reason)
Return a decision YES to do a guarded inline. |
boolean |
isNO()
Is this inline decision a NO? |
boolean |
isYES()
Is this inline decision a YES? |
boolean |
needsGuard()
Does this inline site need a guard? |
static InlineDecision |
NO(RVMMethod target,
String reason)
Return a decision NOT to inline. |
static InlineDecision |
NO(String reason)
Return a decision NOT to inline. |
boolean |
OSRTestFailed()
|
void |
setOSRTestFailed()
|
String |
toString()
|
static InlineDecision |
YES(RVMMethod target,
String reason)
Return a decision to inline without a guard. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Field Detail |
|---|
private final String rationale
private final InlineDecision.Code code
private final RVMMethod[] targets
private final byte[] guards
private boolean testFailedOSR
| Constructor Detail |
|---|
private InlineDecision(RVMMethod[] targets,
byte[] guards,
InlineDecision.Code code,
String reason)
targets - The methods to inlinecode - the decision codereason - a string rationale| Method Detail |
|---|
public static InlineDecision NO(RVMMethod target,
String reason)
target - the method that is not being inlined.reason - a rationale for not inlining
public static InlineDecision NO(String reason)
reason - a rationale for not inlining
public static InlineDecision YES(RVMMethod target,
String reason)
target - the method to inlinereason - a rationale for inlining
public static InlineDecision guardedYES(RVMMethod target,
byte guard,
String reason)
target - the method to inlineguard - the type of guard to usereason - a rationale for inlining
public static InlineDecision guardedYES(RVMMethod[] targets,
byte[] guards,
String reason)
targets - The methods to inlineguards - the types of guard to usereason - A rationale for inlining
public boolean isYES()
public boolean isNO()
public boolean needsGuard()
public RVMMethod[] getTargets()
public byte[] getGuards()
public int getNumberOfTargets()
public void setOSRTestFailed()
public boolean OSRTestFailed()
public String toString()
toString in class Object
|
|||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||