# HG changeset patch # User Christian Humer # Date 1382346467 -7200 # Node ID e47f373499ec00e4efa4673c687aefde51c42744 # Parent 935dcd8ad8eb2242bbccccc744b6abe426fe66d1# Parent b7c8b843dc7b44ada5ea80bbe873190c0dcbb464 Merge. diff -r b7c8b843dc7b -r e47f373499ec graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotForeignCallsProvider.java diff -r b7c8b843dc7b -r e47f373499ec graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotLoweringProvider.java diff -r b7c8b843dc7b -r e47f373499ec graal/com.oracle.truffle.dsl.processor/src/com/oracle/truffle/dsl/processor/Utils.java --- a/graal/com.oracle.truffle.dsl.processor/src/com/oracle/truffle/dsl/processor/Utils.java Sun Oct 20 03:50:51 2013 +0200 +++ b/graal/com.oracle.truffle.dsl.processor/src/com/oracle/truffle/dsl/processor/Utils.java Mon Oct 21 11:07:47 2013 +0200 @@ -306,7 +306,7 @@ case LONG: return "Long"; case DECLARED: - return ((DeclaredType) mirror).asElement().getSimpleName().toString(); + return fixECJBinaryNameIssue(((DeclaredType) mirror).asElement().getSimpleName().toString()); case ARRAY: return getTypeId(((ArrayType) mirror).getComponentType()) + "Array"; case VOID: @@ -379,7 +379,7 @@ } private static String getDeclaredName(DeclaredType element) { - String simpleName = element.asElement().getSimpleName().toString(); + String simpleName = fixECJBinaryNameIssue(element.asElement().getSimpleName().toString()); if (element.getTypeArguments().size() == 0) { return simpleName; @@ -399,6 +399,14 @@ return b.toString(); } + public static String fixECJBinaryNameIssue(String name) { + if (name.contains("$")) { + int lastIndex = name.lastIndexOf('$'); + return name.substring(lastIndex + 1, name.length()); + } + return name; + } + public static String getQualifiedName(TypeElement element) { String qualifiedName = element.getQualifiedName().toString(); if (qualifiedName.contains("$")) { diff -r b7c8b843dc7b -r e47f373499ec graal/com.oracle.truffle.dsl.processor/src/com/oracle/truffle/dsl/processor/codewriter/OrganizedImports.java --- a/graal/com.oracle.truffle.dsl.processor/src/com/oracle/truffle/dsl/processor/codewriter/OrganizedImports.java Sun Oct 20 03:50:51 2013 +0200 +++ b/graal/com.oracle.truffle.dsl.processor/src/com/oracle/truffle/dsl/processor/codewriter/OrganizedImports.java Mon Oct 21 11:07:47 2013 +0200 @@ -135,7 +135,7 @@ } private String createDeclaredTypeName(Element enclosedElement, DeclaredType type) { - String name = type.asElement().getSimpleName().toString(); + String name = Utils.fixECJBinaryNameIssue(type.asElement().getSimpleName().toString()); if (needsImport(enclosedElement, type)) { TypeMirror usedByType = simpleNamesUsed.get(name);