# HG changeset patch # User Christian Humer # Date 1407945978 -7200 # Node ID c22fc3f48c6018b3cf5cd1b9918fd3b643deecdb # Parent e8d9b3827d4b994cb0ee6617911cdcc902e75ee0 Truffle-DSL: optimized ElementUtils.typeEquals diff -r e8d9b3827d4b -r c22fc3f48c60 graal/com.oracle.truffle.dsl.processor/src/com/oracle/truffle/dsl/processor/java/ElementUtils.java --- a/graal/com.oracle.truffle.dsl.processor/src/com/oracle/truffle/dsl/processor/java/ElementUtils.java Wed Aug 13 18:06:18 2014 +0200 +++ b/graal/com.oracle.truffle.dsl.processor/src/com/oracle/truffle/dsl/processor/java/ElementUtils.java Wed Aug 13 18:06:18 2014 +0200 @@ -900,24 +900,17 @@ } public static boolean typeEquals(TypeMirror type1, TypeMirror type2) { - if (type1 == null && type2 == null) { + if (type1 == type2) { return true; } else if (type1 == null || type2 == null) { return false; - } else if (type1 == type2) { - return true; - } - String qualified1 = getQualifiedName(type1); - String qualified2 = getQualifiedName(type2); - - if (type1.getKind() == TypeKind.ARRAY || type2.getKind() == TypeKind.ARRAY) { - if (type1.getKind() == TypeKind.ARRAY && type2.getKind() == TypeKind.ARRAY) { - return typeEquals(((ArrayType) type1).getComponentType(), ((ArrayType) type2).getComponentType()); + } else { + if (type1.getKind() == type2.getKind()) { + return type1.toString().equals(type2.toString()); } else { return false; } } - return qualified1.equals(qualified2); } public static int compareByTypeHierarchy(TypeMirror t1, TypeMirror t2) {