changeset 16576:a01fe4b301a8

Truffle/Instrument: new syntax tags for periodically appearing locations.
author Chris Seaton <chris.seaton@oracle.com>
date Tue, 22 Jul 2014 12:44:55 +0100
parents adafceb4da4a
children cc81bbd2e859
files graal/com.oracle.truffle.api/src/com/oracle/truffle/api/instrument/StandardSyntaxTag.java
diffstat 1 files changed, 18 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/graal/com.oracle.truffle.api/src/com/oracle/truffle/api/instrument/StandardSyntaxTag.java	Sun Jul 20 17:10:04 2014 +0200
+++ b/graal/com.oracle.truffle.api/src/com/oracle/truffle/api/instrument/StandardSyntaxTag.java	Tue Jul 22 12:44:55 2014 +0100
@@ -56,7 +56,24 @@
     /**
      * Marker for a location where ordinary "stepping" should halt.
      */
-    STATEMENT("statement", "basic unit of the language, suitable for \"stepping\" in a debugger");
+    STATEMENT("statement", "basic unit of the language, suitable for \"stepping\" in a debugger"),
+
+    /**
+     * Marker for the start of the body of a method.
+     */
+    START_METHOD("start-method", "start of the body of a method"),
+
+    /**
+     * Marker for the start of the body of a loop.
+     */
+    START_LOOP("start-loop", "start of the body of a loop"),
+
+    /**
+     * Marker that is attached to some arbitrary locations that appear often-enough in an AST so
+     * that a location with this tag is regularly executed. Could be the start of method and loop
+     * bodies. May be used to implement some kind of safepoint functionality.
+     */
+    PERIODIC("periodic", "arbitrary locations that appear often-enough in an AST so that a location with this tag is regularly executed");
 
     private final String name;
     private final String description;