# HG changeset patch # User Doug Simon # Date 1412198410 -7200 # Node ID b1fc1ad0439e3def346fbdd96aac602aa42415d5 # Parent 8b4364df9bd37af49b93c569df1d36c541588bfa removed value number cache diff -r 8b4364df9bd3 -r b1fc1ad0439e graal/com.oracle.graal.nodeinfo.processor/src/com/oracle/graal/nodeinfo/processor/GraphNodeGenerator.java --- 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 inputFields = new ArrayList<>(); private final List 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); }