comparison graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/InvokeNode.java @ 7017:70bff0fa64b1

Rename Invoke.isMegamorphic to isPolymorphic since it's what it is actually used for. InvokeWithExceptionNode should not be polymorphic by default
author Gilles Duboscq <duboscq@ssw.jku.at>
date Fri, 23 Nov 2012 12:18:01 +0100
parents 79119bd2505a
children e23980f4a890
comparison
equal deleted inserted replaced
7016:05e03daa8645 7017:70bff0fa64b1
37 @NodeInfo(nameTemplate = "Invoke#{p#targetMethod/s}") 37 @NodeInfo(nameTemplate = "Invoke#{p#targetMethod/s}")
38 public final class InvokeNode extends AbstractStateSplit implements StateSplit, Node.IterableNodeType, Invoke, LIRLowerable, MemoryCheckpoint { 38 public final class InvokeNode extends AbstractStateSplit implements StateSplit, Node.IterableNodeType, Invoke, LIRLowerable, MemoryCheckpoint {
39 39
40 @Input private final CallTargetNode callTarget; 40 @Input private final CallTargetNode callTarget;
41 private final int bci; 41 private final int bci;
42 private boolean megamorphic; 42 private boolean polymorphic;
43 private boolean useForInlining; 43 private boolean useForInlining;
44 private final long leafGraphId; 44 private final long leafGraphId;
45 45
46 /** 46 /**
47 * Constructs a new Invoke instruction. 47 * Constructs a new Invoke instruction.
52 public InvokeNode(CallTargetNode callTarget, int bci, long leafGraphId) { 52 public InvokeNode(CallTargetNode callTarget, int bci, long leafGraphId) {
53 super(callTarget.returnStamp()); 53 super(callTarget.returnStamp());
54 this.callTarget = callTarget; 54 this.callTarget = callTarget;
55 this.bci = bci; 55 this.bci = bci;
56 this.leafGraphId = leafGraphId; 56 this.leafGraphId = leafGraphId;
57 this.megamorphic = false; 57 this.polymorphic = false;
58 this.useForInlining = true; 58 this.useForInlining = true;
59 } 59 }
60 60
61 @Override 61 @Override
62 public CallTargetNode callTarget() { 62 public CallTargetNode callTarget() {
67 public MethodCallTargetNode methodCallTarget() { 67 public MethodCallTargetNode methodCallTarget() {
68 return (MethodCallTargetNode) callTarget; 68 return (MethodCallTargetNode) callTarget;
69 } 69 }
70 70
71 @Override 71 @Override
72 public boolean isMegamorphic() { 72 public boolean isPolymorphic() {
73 return megamorphic; 73 return polymorphic;
74 } 74 }
75 75
76 @Override 76 @Override
77 public void setMegamorphic(boolean value) { 77 public void setPolymorphic(boolean value) {
78 this.megamorphic = value; 78 this.polymorphic = value;
79 } 79 }
80 80
81 public boolean useForInlining() { 81 public boolean useForInlining() {
82 return useForInlining; 82 return useForInlining;
83 } 83 }