comparison graal/com.oracle.graal.graphbuilderconf/src/com/oracle/graal/graphbuilderconf/ForeignCallPlugin.java @ 21548:f4b3a6dadb44

moved Receiver inner class from MethodIdMap to InvocationPlugin (JBS:GRAAL-53)
author Doug Simon <doug.simon@oracle.com>
date Tue, 26 May 2015 11:19:50 +0200
parents e5df47e0efb8
children 48c1ebd24120
comparison
equal deleted inserted replaced
21547:78f0792aa890 21548:f4b3a6dadb44
22 */ 22 */
23 package com.oracle.graal.graphbuilderconf; 23 package com.oracle.graal.graphbuilderconf;
24 24
25 import com.oracle.graal.api.code.*; 25 import com.oracle.graal.api.code.*;
26 import com.oracle.graal.api.meta.*; 26 import com.oracle.graal.api.meta.*;
27 import com.oracle.graal.graphbuilderconf.MethodIdMap.Receiver;
28 import com.oracle.graal.nodes.*; 27 import com.oracle.graal.nodes.*;
29 import com.oracle.graal.nodes.extended.*; 28 import com.oracle.graal.nodes.extended.*;
30 29
31 /** 30 /**
32 * {@link InvocationPlugin} for converting a method call directly to a foreign call. 31 * {@link InvocationPlugin} for converting a method call directly to a foreign call.
38 public ForeignCallPlugin(ForeignCallsProvider foreignCalls, ForeignCallDescriptor descriptor) { 37 public ForeignCallPlugin(ForeignCallsProvider foreignCalls, ForeignCallDescriptor descriptor) {
39 this.foreignCalls = foreignCalls; 38 this.foreignCalls = foreignCalls;
40 this.descriptor = descriptor; 39 this.descriptor = descriptor;
41 } 40 }
42 41
43 public boolean execute(GraphBuilderContext b, ResolvedJavaMethod targetMethod, Receiver receiver, ValueNode[] args) { 42 public boolean execute(GraphBuilderContext b, ResolvedJavaMethod targetMethod, InvocationPlugin.Receiver receiver, ValueNode[] args) {
44 ForeignCallNode foreignCall = new ForeignCallNode(foreignCalls, descriptor, args); 43 ForeignCallNode foreignCall = new ForeignCallNode(foreignCalls, descriptor, args);
45 foreignCall.setBci(b.bci()); 44 foreignCall.setBci(b.bci());
46 b.addPush(foreignCall); 45 b.addPush(foreignCall);
47 return true; 46 return true;
48 } 47 }