diff graal/com.oracle.graal.java/src/com/oracle/graal/java/GraphBuilderContext.java @ 19791:14e703edb2ab

use GraphBuilderPlugins for method substitutions, intrinsics and snippets (GRAAL-982)
author Doug Simon <doug.simon@oracle.com>
date Wed, 11 Mar 2015 20:43:12 +0100
parents 69b7ad0a3fda
children 1e27e31aca11
line wrap: on
line diff
--- a/graal/com.oracle.graal.java/src/com/oracle/graal/java/GraphBuilderContext.java	Wed Mar 11 17:16:30 2015 +0100
+++ b/graal/com.oracle.graal.java/src/com/oracle/graal/java/GraphBuilderContext.java	Wed Mar 11 20:43:12 2015 +0100
@@ -27,7 +27,6 @@
 import com.oracle.graal.api.replacements.*;
 import com.oracle.graal.nodes.*;
 import com.oracle.graal.nodes.calc.*;
-import com.oracle.graal.nodes.extended.*;
 import com.oracle.graal.nodes.spi.*;
 
 /**
@@ -65,12 +64,28 @@
     GraphBuilderContext getParent();
 
     /**
-     * Gets the inline depth of this context. 0 implies this is the context for the root method.
+     * Gets the root method for the graph building process.
+     */
+    ResolvedJavaMethod getRootMethod();
+
+    /**
+     * Gets the method currently being parsed.
+     */
+    ResolvedJavaMethod getMethod();
+
+    /**
+     * Gets the index of the bytecode instruction currently being parsed.
+     */
+    int bci();
+
+    /**
+     * Gets the inline depth of this context. 0 implies this is the context for the
+     * {@linkplain #getRootMethod() root method}.
      */
     int getDepth();
 
     /**
-     * Determines if the graph builder is parsing a snippet or method substitution.
+     * Determines if the current parsing context is a snippet or method substitution.
      */
     boolean parsingReplacement();
 
@@ -85,7 +100,7 @@
         return nonNullValue;
     }
 
-    GuardingNode getCurrentBlockGuard();
+    boolean eagerResolving();
 
     BailoutException bailout(String string);
 }