changeset 17312:b1fc1ad0439e

removed value number cache
author Doug Simon <doug.simon@oracle.com>
date Wed, 01 Oct 2014 23:20:10 +0200
parents 8b4364df9bd3
children d6e4c9031ff6
files graal/com.oracle.graal.nodeinfo.processor/src/com/oracle/graal/nodeinfo/processor/GraphNodeGenerator.java
diffstat 1 files changed, 1 insertions(+), 19 deletions(-) [+]
line wrap: on
line diff
--- a/graal/com.oracle.graal.nodeinfo.processor/src/com/oracle/graal/nodeinfo/processor/GraphNodeGenerator.java	Wed Oct 01 22:02:52 2014 +0200
+++ b/graal/com.oracle.graal.nodeinfo.processor/src/com/oracle/graal/nodeinfo/processor/GraphNodeGenerator.java	Wed Oct 01 23:20:10 2014 +0200
@@ -58,8 +58,6 @@
     private final TypeElement NodeInputList;
     private final TypeElement NodeSuccessorList;
     private final TypeElement ValueNumberable;
-    private final TypeElement DebugMetric;
-    private final TypeElement Debug;
 
     private final List<VariableElement> inputFields = new ArrayList<>();
     private final List<VariableElement> inputListFields = new ArrayList<>();
@@ -85,8 +83,6 @@
         this.NodeInputList = getTypeElement("com.oracle.graal.graph.NodeInputList");
         this.NodeSuccessorList = getTypeElement("com.oracle.graal.graph.NodeSuccessorList");
         this.ValueNumberable = getTypeElement("com.oracle.graal.graph.Node.ValueNumberable");
-        this.DebugMetric = getTypeElement("com.oracle.graal.debug.DebugMetric");
-        this.Debug = getTypeElement("com.oracle.graal.debug.Debug");
     }
 
     @SafeVarargs
@@ -443,19 +439,8 @@
 
     private void createValueNumberMethod(TypeElement node) {
         if (isAssignableWithErasure(node, ValueNumberable)) {
-            String simpleName = node.getSimpleName().toString();
-            CodeVariableElement cacheHitMetric = new CodeVariableElement(modifiers(PRIVATE, STATIC, FINAL), DebugMetric.asType(), "ValueNumberableCache_" + simpleName + "_Hit");
-            CodeVariableElement cacheMissMetric = new CodeVariableElement(modifiers(PRIVATE, STATIC, FINAL), DebugMetric.asType(), "ValueNumberableCache_" + simpleName + "_Miss");
-            cacheHitMetric.createInitBuilder().type(Debug.asType()).string(".metric(\"", cacheHitMetric.getName().replace('_', '.') + "\")").end();
-            cacheMissMetric.createInitBuilder().type(Debug.asType()).string(".metric(\"", cacheMissMetric.getName().replace('_', '.') + "\")").end();
-
-            genClass.add(new CodeVariableElement(modifiers(PRIVATE), getType(int.class), "valueNumber"));
-            genClass.add(cacheHitMetric);
-            genClass.add(cacheMissMetric);
-
             CodeExecutableElement method = new CodeExecutableElement(modifiers(PUBLIC), getType(int.class), "getValueNumber");
             CodeTreeBuilder b = method.createBuilder();
-            b.startIf().string("valueNumber == 0").end().startBlock();
             b.startStatement().string("int number = " + node.hashCode()).end();
             for (VariableElement f : dataFields) {
                 String fname = f.getSimpleName().toString();
@@ -495,11 +480,8 @@
                         break;
                 }
             }
-            b.startStatement().string("valueNumber = number").end();
-            b.startStatement().string("ValueNumberableCache_" + simpleName + "_Miss", ".increment()").end();
             b.end();
-            b.startElseBlock().startStatement().string("ValueNumberableCache_" + simpleName + "_Hit", ".increment()").end().end();
-            b.startReturn().string("valueNumber").end();
+            b.startReturn().string("number").end();
             genClass.add(method);
             checkOnlyInGenNode(method);
         }