comparison graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/StubForeignCallNode.java @ 19396: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
19395:a306749d3e86 19396:7e2c87dae93e
36 36
37 /** 37 /**
38 * Node for a {@linkplain ForeignCallDescriptor foreign} call from within a stub. 38 * Node for a {@linkplain ForeignCallDescriptor foreign} call from within a stub.
39 */ 39 */
40 @NodeInfo(nameTemplate = "StubForeignCall#{p#descriptor/s}", allowedUsageTypes = {InputType.Memory}) 40 @NodeInfo(nameTemplate = "StubForeignCall#{p#descriptor/s}", allowedUsageTypes = {InputType.Memory})
41 public class StubForeignCallNode extends FixedWithNextNode implements LIRLowerable, MemoryCheckpoint.Multi { 41 public final class StubForeignCallNode extends FixedWithNextNode implements LIRLowerable, MemoryCheckpoint.Multi {
42 42
43 public static final NodeClass TYPE = NodeClass.get(StubForeignCallNode.class);
43 @Input NodeInputList<ValueNode> arguments; 44 @Input NodeInputList<ValueNode> arguments;
44 protected final ForeignCallsProvider foreignCalls; 45 protected final ForeignCallsProvider foreignCalls;
45 46
46 protected final ForeignCallDescriptor descriptor; 47 protected final ForeignCallDescriptor descriptor;
47 48
48 public StubForeignCallNode(@InjectedNodeParameter ForeignCallsProvider foreignCalls, ForeignCallDescriptor descriptor, ValueNode... arguments) { 49 public StubForeignCallNode(@InjectedNodeParameter ForeignCallsProvider foreignCalls, ForeignCallDescriptor descriptor, ValueNode... arguments) {
49 super(StampFactory.forKind(Kind.fromJavaClass(descriptor.getResultType()))); 50 super(TYPE, StampFactory.forKind(Kind.fromJavaClass(descriptor.getResultType())));
50 this.arguments = new NodeInputList<>(this, arguments); 51 this.arguments = new NodeInputList<>(this, arguments);
51 this.descriptor = descriptor; 52 this.descriptor = descriptor;
52 this.foreignCalls = foreignCalls; 53 this.foreignCalls = foreignCalls;
53 } 54 }
54 55