changeset 22253:ffb52d4126bb

Truffle/Instrumentation: change signature of ASTProber to apply only to RootNodes
author Michael Van De Vanter <michael.van.de.vanter@oracle.com>
date Fri, 25 Sep 2015 12:10:32 -0700
parents a2db5ebb5c4b
children 7ec5eef84ecf
files truffle/com.oracle.truffle.api.test/src/com/oracle/truffle/api/test/instrument/InstrumentationTest.java truffle/com.oracle.truffle.api.test/src/com/oracle/truffle/api/test/instrument/InstrumentationTestingLanguage.java truffle/com.oracle.truffle.api.test/src/com/oracle/truffle/api/test/vm/InitializationTest.java truffle/com.oracle.truffle.api/src/com/oracle/truffle/api/instrument/ASTProber.java truffle/com.oracle.truffle.sl/src/com/oracle/truffle/sl/nodes/instrument/SLStandardASTProber.java truffle/com.oracle.truffle.tools.test/src/com/oracle/truffle/tools/test/ToolTestUtil.java truffle/com.oracle.truffle.tools/src/com/oracle/truffle/tools/NodeExecCounter.java
diffstat 7 files changed, 16 insertions(+), 13 deletions(-) [+]
line wrap: on
line diff
--- a/truffle/com.oracle.truffle.api.test/src/com/oracle/truffle/api/test/instrument/InstrumentationTest.java	Fri Sep 25 12:10:06 2015 -0700
+++ b/truffle/com.oracle.truffle.api.test/src/com/oracle/truffle/api/test/instrument/InstrumentationTest.java	Fri Sep 25 12:10:32 2015 -0700
@@ -45,6 +45,7 @@
 import com.oracle.truffle.api.instrument.impl.DefaultStandardInstrumentListener;
 import com.oracle.truffle.api.nodes.Node;
 import com.oracle.truffle.api.nodes.NodeVisitor;
+import com.oracle.truffle.api.nodes.RootNode;
 import com.oracle.truffle.api.source.Source;
 import com.oracle.truffle.api.test.instrument.InstrumentationTestNodes.TestAdditionNode;
 import com.oracle.truffle.api.test.instrument.InstrumentationTestNodes.TestLanguageNode;
@@ -336,8 +337,8 @@
         }
 
         @Override
-        public void probeAST(Instrumenter inst, Node node) {
-            node.accept(this);
+        public void probeAST(Instrumenter inst, RootNode rootNode) {
+            rootNode.accept(this);
         }
     }
 
--- a/truffle/com.oracle.truffle.api.test/src/com/oracle/truffle/api/test/instrument/InstrumentationTestingLanguage.java	Fri Sep 25 12:10:06 2015 -0700
+++ b/truffle/com.oracle.truffle.api.test/src/com/oracle/truffle/api/test/instrument/InstrumentationTestingLanguage.java	Fri Sep 25 12:10:32 2015 -0700
@@ -38,6 +38,7 @@
 import com.oracle.truffle.api.instrument.WrapperNode;
 import com.oracle.truffle.api.nodes.Node;
 import com.oracle.truffle.api.nodes.NodeVisitor;
+import com.oracle.truffle.api.nodes.RootNode;
 import com.oracle.truffle.api.source.Source;
 import com.oracle.truffle.api.test.instrument.InstrumentationTestNodes.InstrumentationTestRootNode;
 import com.oracle.truffle.api.test.instrument.InstrumentationTestNodes.TestAdditionNode;
@@ -144,7 +145,7 @@
 
     static final class TestASTProber implements ASTProber {
 
-        public void probeAST(final Instrumenter instrumenter, Node startNode) {
+        public void probeAST(final Instrumenter instrumenter, RootNode startNode) {
             startNode.accept(new NodeVisitor() {
 
                 @Override
--- a/truffle/com.oracle.truffle.api.test/src/com/oracle/truffle/api/test/vm/InitializationTest.java	Fri Sep 25 12:10:06 2015 -0700
+++ b/truffle/com.oracle.truffle.api.test/src/com/oracle/truffle/api/test/vm/InitializationTest.java	Fri Sep 25 12:10:32 2015 -0700
@@ -169,7 +169,7 @@
 
         private final ASTProber prober = new ASTProber() {
 
-            public void probeAST(final Instrumenter instrumenter, Node startNode) {
+            public void probeAST(final Instrumenter instrumenter, RootNode startNode) {
                 startNode.accept(new NodeVisitor() {
 
                     public boolean visit(Node node) {
--- a/truffle/com.oracle.truffle.api/src/com/oracle/truffle/api/instrument/ASTProber.java	Fri Sep 25 12:10:06 2015 -0700
+++ b/truffle/com.oracle.truffle.api/src/com/oracle/truffle/api/instrument/ASTProber.java	Fri Sep 25 12:10:32 2015 -0700
@@ -24,21 +24,20 @@
  */
 package com.oracle.truffle.api.instrument;
 
-import com.oracle.truffle.api.nodes.Node;
+import com.oracle.truffle.api.nodes.RootNode;
 
 /**
  * Enables instrumentation by attaching {@linkplain Probe Probes} to some nodes in a (newly created,
- * not yet executed) AST.
+ * not yet executed) {@link RootNode}.
  *
- * @see Probe
- * @see Instrumenter#addProbeListener(ProbeListener)
+ * @see Instrumenter#probe(com.oracle.truffle.api.nodes.Node)
  */
 public interface ASTProber {
 
     /**
-     * Walk the AST starting at a node and enable instrumentation at selected nodes by attaching
+     * Walk the root's AST and enable instrumentation at selected nodes by attaching
      * {@linkplain Probe Probes} to them.
      */
-    void probeAST(Instrumenter instrumenter, Node node);
+    void probeAST(Instrumenter instrumenter, RootNode rootNode);
 
 }
--- a/truffle/com.oracle.truffle.sl/src/com/oracle/truffle/sl/nodes/instrument/SLStandardASTProber.java	Fri Sep 25 12:10:06 2015 -0700
+++ b/truffle/com.oracle.truffle.sl/src/com/oracle/truffle/sl/nodes/instrument/SLStandardASTProber.java	Fri Sep 25 12:10:32 2015 -0700
@@ -50,6 +50,7 @@
 import com.oracle.truffle.api.instrument.Probe;
 import com.oracle.truffle.api.nodes.Node;
 import com.oracle.truffle.api.nodes.NodeVisitor;
+import com.oracle.truffle.api.nodes.RootNode;
 import com.oracle.truffle.sl.nodes.SLExpressionNode;
 import com.oracle.truffle.sl.nodes.SLStatementNode;
 import com.oracle.truffle.sl.nodes.controlflow.SLWhileNode;
@@ -61,7 +62,7 @@
  */
 public class SLStandardASTProber implements ASTProber {
 
-    public void probeAST(final Instrumenter instrumenter, Node startNode) {
+    public void probeAST(final Instrumenter instrumenter, RootNode startNode) {
         startNode.accept(new NodeVisitor() {
 
             /**
--- a/truffle/com.oracle.truffle.tools.test/src/com/oracle/truffle/tools/test/ToolTestUtil.java	Fri Sep 25 12:10:06 2015 -0700
+++ b/truffle/com.oracle.truffle.tools.test/src/com/oracle/truffle/tools/test/ToolTestUtil.java	Fri Sep 25 12:10:32 2015 -0700
@@ -158,7 +158,7 @@
 
     static final class TestASTProber implements ASTProber {
 
-        public void probeAST(final Instrumenter instrumenter, Node startNode) {
+        public void probeAST(final Instrumenter instrumenter, RootNode startNode) {
             startNode.accept(new NodeVisitor() {
 
                 @Override
--- a/truffle/com.oracle.truffle.tools/src/com/oracle/truffle/tools/NodeExecCounter.java	Fri Sep 25 12:10:06 2015 -0700
+++ b/truffle/com.oracle.truffle.tools/src/com/oracle/truffle/tools/NodeExecCounter.java	Fri Sep 25 12:10:32 2015 -0700
@@ -50,6 +50,7 @@
 import com.oracle.truffle.api.nodes.Node;
 import com.oracle.truffle.api.nodes.Node.Child;
 import com.oracle.truffle.api.nodes.NodeVisitor;
+import com.oracle.truffle.api.nodes.RootNode;
 
 /**
  * An {@link InstrumentationTool} that counts interpreter <em>execution calls</em> to AST nodes,
@@ -292,7 +293,7 @@
      */
     private class ExecCounterASTProber implements ASTProber {
 
-        public void probeAST(final Instrumenter instrumenter, final Node startNode) {
+        public void probeAST(final Instrumenter instrumenter, final RootNode startNode) {
 
             startNode.accept(new NodeVisitor() {