Mercurial > hg > graal-jvmci-8
changeset 16478:1f1ac8857d92
moved toJavaName(JavaType type, boolean qualified) from MetaUtil to be a default method in JavaType
line wrap: on
line diff
--- a/graal/com.oracle.graal.api.code/src/com/oracle/graal/api/code/VirtualObject.java Thu Jul 10 21:46:27 2014 +0200 +++ b/graal/com.oracle.graal.api.code/src/com/oracle/graal/api/code/VirtualObject.java Thu Jul 10 22:25:08 2014 +0200 @@ -22,8 +22,6 @@ */ package com.oracle.graal.api.code; -import static com.oracle.graal.api.meta.MetaUtil.*; - import java.util.*; import com.oracle.graal.api.meta.*; @@ -70,7 +68,7 @@ private static StringBuilder appendValue(StringBuilder buf, Value value, Set<VirtualObject> visited) { if (value instanceof VirtualObject) { VirtualObject vo = (VirtualObject) value; - buf.append("vobject:").append(toJavaName(vo.type, false)).append(':').append(vo.id); + buf.append("vobject:").append(vo.type.toJavaName(false)).append(':').append(vo.id); if (!visited.contains(vo)) { visited.add(vo); buf.append('{');
--- a/graal/com.oracle.graal.api.meta/src/com/oracle/graal/api/meta/JavaType.java Thu Jul 10 21:46:27 2014 +0200 +++ b/graal/com.oracle.graal.api.meta/src/com/oracle/graal/api/meta/JavaType.java Thu Jul 10 22:25:08 2014 +0200 @@ -22,6 +22,8 @@ */ package com.oracle.graal.api.meta; +import static com.oracle.graal.api.meta.MetaUtil.*; + /** * Represents a resolved or unresolved type. Types include primitives, objects, {@code void}, and * arrays thereof. @@ -77,4 +79,31 @@ * @return the resolved Java type */ ResolvedJavaType resolve(ResolvedJavaType accessingClass); + + /** + * Gets the Java programming language name for this type. The following are examples of strings + * returned by this method: + * + * <pre> + * qualified == true: + * java.lang.Object + * int + * boolean[][] + * qualified == false: + * Object + * int + * boolean[][] + * </pre> + * + * @param qualified specifies if the package prefix of this type should be included in the + * returned name + * @return the Java name corresponding to {@code type} + */ + default String toJavaName(boolean qualified) { + Kind kind = getKind(); + if (kind == Kind.Object) { + return internalNameToJava(getName(), qualified, false); + } + return getKind().getJavaName(); + } }
--- a/graal/com.oracle.graal.api.meta/src/com/oracle/graal/api/meta/MetaUtil.java Thu Jul 10 21:46:27 2014 +0200 +++ b/graal/com.oracle.graal.api.meta/src/com/oracle/graal/api/meta/MetaUtil.java Thu Jul 10 22:25:08 2014 +0200 @@ -205,34 +205,6 @@ * strings returned by this method: * * <pre> - * qualified == true: - * java.lang.Object - * int - * boolean[][] - * qualified == false: - * Object - * int - * boolean[][] - * </pre> - * - * @param type the type to be converted to a Java name - * @param qualified specifies if the package prefix of the type should be included in the - * returned name - * @return the Java name corresponding to {@code type} - */ - public static String toJavaName(JavaType type, boolean qualified) { - Kind kind = type.getKind(); - if (kind == Kind.Object) { - return internalNameToJava(type.getName(), qualified, false); - } - return type.getKind().getJavaName(); - } - - /** - * Converts a given type to its Java programming language name. The following are examples of - * strings returned by this method: - * - * <pre> * java.lang.Object * int * boolean[][] @@ -242,7 +214,7 @@ * @return the Java name corresponding to {@code type} */ public static String toJavaName(JavaType type) { - return (type == null) ? null : internalNameToJava(type.getName(), true, false); + return internalNameToJava(type.getName(), true, false); } /** @@ -252,7 +224,7 @@ return internalNameToJava(type.getName(), true, true); } - private static String internalNameToJava(String name, boolean qualified, boolean classForNameCompatible) { + public static String internalNameToJava(String name, boolean qualified, boolean classForNameCompatible) { switch (name.charAt(0)) { case 'L': { String result = name.substring(1, name.length() - 1).replace('/', '.'); @@ -333,14 +305,14 @@ if (sig == null) { sig = method.getSignature(); } - sb.append(toJavaName(sig.getReturnType(null), qualified)); + sb.append(sig.getReturnType(null).toJavaName(qualified)); break; } case 'H': qualified = true; // fall through case 'h': { - sb.append(toJavaName(method.getDeclaringClass(), qualified)); + sb.append(method.getDeclaringClass().toJavaName(qualified)); break; } case 'n': { @@ -358,7 +330,7 @@ if (i != 0) { sb.append(", "); } - sb.append(toJavaName(sig.getParameterType(i, null), qualified)); + sb.append(sig.getParameterType(i, null).toJavaName(qualified)); } break; } @@ -422,14 +394,14 @@ qualified = true; // fall through case 't': { - sb.append(toJavaName(type, qualified)); + sb.append(type.toJavaName(qualified)); break; } case 'H': qualified = true; // fall through case 'h': { - sb.append(toJavaName(field.getDeclaringClass(), qualified)); + sb.append(field.getDeclaringClass().toJavaName(qualified)); break; } case 'n': {
--- a/graal/com.oracle.graal.hotspot.hsail/src/com/oracle/graal/hotspot/hsail/replacements/HSAILNewObjectSnippets.java Thu Jul 10 21:46:27 2014 +0200 +++ b/graal/com.oracle.graal.hotspot.hsail/src/com/oracle/graal/hotspot/hsail/replacements/HSAILNewObjectSnippets.java Thu Jul 10 22:25:08 2014 +0200 @@ -290,7 +290,7 @@ args.add("hub", hub); args.add("prototypeMarkWord", type.prototypeMarkWord()); args.addConst("fillContents", newInstanceNode.fillContents()); - args.addConst("typeContext", MetaUtil.toJavaName(type, false)); + args.addConst("typeContext", type.toJavaName(false)); SnippetTemplate template = template(args); Debug.log("Lowering allocateInstance in %s: node=%s, template=%s, arguments=%s", graph, newInstanceNode, template, args); @@ -320,7 +320,7 @@ args.addConst("log2ElementSize", log2ElementSize); args.addConst("fillContents", newArrayNode.fillContents()); args.addConst("maybeUnroll", length.isConstant()); - args.addConst("typeContext", MetaUtil.toJavaName(arrayType, false)); + args.addConst("typeContext", arrayType.toJavaName(false)); SnippetTemplate template = template(args); Debug.log("Lowering allocateArray in %s: node=%s, template=%s, arguments=%s", graph, newArrayNode, template, args);
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/NewObjectSnippets.java Thu Jul 10 21:46:27 2014 +0200 +++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/NewObjectSnippets.java Thu Jul 10 22:25:08 2014 +0200 @@ -23,7 +23,6 @@ package com.oracle.graal.hotspot.replacements; import static com.oracle.graal.api.code.UnsignedMath.*; -import static com.oracle.graal.api.meta.MetaUtil.*; import static com.oracle.graal.compiler.common.GraalOptions.*; import static com.oracle.graal.hotspot.replacements.HotSpotReplacementsUtil.*; import static com.oracle.graal.hotspot.replacements.NewObjectSnippets.Options.*; @@ -398,7 +397,7 @@ args.addConst("fillContents", newInstanceNode.fillContents()); args.addConst("threadRegister", registers.getThreadRegister()); args.addConst("constantSize", true); - args.addConst("typeContext", ProfileAllocations.getValue() ? toJavaName(type, false) : ""); + args.addConst("typeContext", ProfileAllocations.getValue() ? type.toJavaName(false) : ""); SnippetTemplate template = template(args); Debug.log("Lowering allocateInstance in %s: node=%s, template=%s, arguments=%s", graph, newInstanceNode, template, args); @@ -428,7 +427,7 @@ args.addConst("fillContents", newArrayNode.fillContents()); args.addConst("threadRegister", registers.getThreadRegister()); args.addConst("maybeUnroll", length.isConstant()); - args.addConst("typeContext", ProfileAllocations.getValue() ? toJavaName(arrayType, false) : ""); + args.addConst("typeContext", ProfileAllocations.getValue() ? arrayType.toJavaName(false) : ""); SnippetTemplate template = template(args); Debug.log("Lowering allocateArray in %s: node=%s, template=%s, arguments=%s", graph, newArrayNode, template, args);
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/virtual/CommitAllocationNode.java Thu Jul 10 21:46:27 2014 +0200 +++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/virtual/CommitAllocationNode.java Thu Jul 10 22:25:08 2014 +0200 @@ -24,7 +24,6 @@ import java.util.*; -import com.oracle.graal.api.meta.*; import com.oracle.graal.compiler.common.type.*; import com.oracle.graal.graph.*; import com.oracle.graal.graph.spi.*; @@ -102,7 +101,7 @@ for (int objIndex = 0; objIndex < virtualObjects.size(); objIndex++) { VirtualObjectNode virtual = virtualObjects.get(objIndex); StringBuilder s = new StringBuilder(); - s.append(MetaUtil.toJavaName(virtual.type(), false)).append("["); + s.append(virtual.type().toJavaName(false)).append("["); for (int i = 0; i < virtual.entryCount(); i++) { ValueNode value = values.get(valuePos++); s.append(i == 0 ? "" : ",").append(value == null ? "_" : value.toString(Verbosity.Id));
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/virtual/VirtualInstanceNode.java Thu Jul 10 21:46:27 2014 +0200 +++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/virtual/VirtualInstanceNode.java Thu Jul 10 22:25:08 2014 +0200 @@ -63,7 +63,7 @@ @Override public String toString(Verbosity verbosity) { if (verbosity == Verbosity.Name) { - return super.toString(Verbosity.Name) + " " + MetaUtil.toJavaName(type, false); + return super.toString(Verbosity.Name) + " " + type.toJavaName(false); } else { return super.toString(verbosity); }
--- a/graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/NodeIntrinsificationPhase.java Thu Jul 10 21:46:27 2014 +0200 +++ b/graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/NodeIntrinsificationPhase.java Thu Jul 10 22:25:08 2014 +0200 @@ -203,7 +203,7 @@ } else { result = providers.getMetaAccess().lookupJavaType(intrinsic.value()); } - assert providers.getMetaAccess().lookupJavaType(ValueNode.class).isAssignableFrom(result) : "Node intrinsic class " + toJavaName(result, false) + " derived from @" + + assert providers.getMetaAccess().lookupJavaType(ValueNode.class).isAssignableFrom(result) : "Node intrinsic class " + result.toJavaName(false) + " derived from @" + NodeIntrinsic.class.getSimpleName() + " annotation on " + format("%H.%n(%p)", target) + " is not a subclass of " + ValueNode.class; return result; }
--- a/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/PartialEvaluator.java Thu Jul 10 21:46:27 2014 +0200 +++ b/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/PartialEvaluator.java Thu Jul 10 22:25:08 2014 +0200 @@ -124,7 +124,7 @@ if (TraceTruffleCompilationHistogram.getValue() && constantReceivers != null) { DebugHistogram histogram = Debug.createHistogram("Expanded Truffle Nodes"); for (Constant c : constantReceivers) { - String javaName = MetaUtil.toJavaName(providers.getMetaAccess().lookupJavaType(c), false); + String javaName = providers.getMetaAccess().lookupJavaType(c).toJavaName(false); // The DSL uses nested classes with redundant names - only show the inner class int index = javaName.indexOf('$');