comparison graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/TypeProfileProxyNode.java @ 19403:7e2c87dae93e

Create static final NodeClass field named TYPE in Node subclasses.
author Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
date Mon, 16 Feb 2015 15:43:03 +0100
parents f57d86eb036f
children 61d3cb8e1280
comparison
equal deleted inserted replaced
19402:a306749d3e86 19403:7e2c87dae93e
35 35
36 /** 36 /**
37 * A node that attaches a type profile to a proxied input node. 37 * A node that attaches a type profile to a proxied input node.
38 */ 38 */
39 @NodeInfo 39 @NodeInfo
40 public class TypeProfileProxyNode extends UnaryNode implements IterableNodeType, ValueProxy { 40 public final class TypeProfileProxyNode extends UnaryNode implements IterableNodeType, ValueProxy {
41 41
42 public static final NodeClass TYPE = NodeClass.get(TypeProfileProxyNode.class);
42 protected final JavaTypeProfile profile; 43 protected final JavaTypeProfile profile;
43 protected transient ResolvedJavaType lastCheckedType; 44 protected transient ResolvedJavaType lastCheckedType;
44 protected transient JavaTypeProfile lastCheckedProfile; 45 protected transient JavaTypeProfile lastCheckedProfile;
45 46
46 public static ValueNode proxify(ValueNode object, JavaTypeProfile profile) { 47 public static ValueNode proxify(ValueNode object, JavaTypeProfile profile) {
57 } 58 }
58 return object.graph().addWithoutUnique(new TypeProfileProxyNode(object, profile)); 59 return object.graph().addWithoutUnique(new TypeProfileProxyNode(object, profile));
59 } 60 }
60 61
61 protected TypeProfileProxyNode(ValueNode value, JavaTypeProfile profile) { 62 protected TypeProfileProxyNode(ValueNode value, JavaTypeProfile profile) {
62 super(value.stamp(), value); 63 super(TYPE, value.stamp(), value);
63 this.profile = profile; 64 this.profile = profile;
64 } 65 }
65 66
66 public JavaTypeProfile getProfile() { 67 public JavaTypeProfile getProfile() {
67 return profile; 68 return profile;