Skip to content

Commit e2d212b

Browse files
committed
Adapted isIdentity implementation.
1 parent fc70a03 commit e2d212b

File tree

3 files changed

+7
-9
lines changed

3 files changed

+7
-9
lines changed

src/jdk.internal.vm.ci/share/classes/jdk/vm/ci/hotspot/HotSpotResolvedObjectTypeImpl.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -450,10 +450,10 @@ public boolean isInterface() {
450450

451451
@Override
452452
public boolean isIdentity() {
453-
if (!config().valhallaEnabled) {
454-
return !isInterface();
453+
if (config().valhallaEnabled) {
454+
return isArray() || (getAccessFlags() & config().jvmAccIdentity) != 0;
455455
}
456-
return isArray() || (getAccessFlags() & config().jvmAccIdentity) != 0;
456+
return !isInterface();
457457
}
458458

459459
@Override

src/jdk.internal.vm.ci/share/classes/jdk/vm/ci/hotspot/HotSpotResolvedPrimitiveType.java

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -183,11 +183,6 @@ public boolean isInterface() {
183183
return false;
184184
}
185185

186-
@Override
187-
public boolean isIdentity() {
188-
return false;
189-
}
190-
191186
@Override
192187
public boolean isAssignableFrom(ResolvedJavaType other) {
193188
assert other != null;

src/jdk.internal.vm.ci/share/classes/jdk/vm/ci/meta/ResolvedJavaType.java

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -421,6 +421,9 @@ default boolean isConcrete() {
421421
* @return {@code true} if this type has an identity
422422
*/
423423
default boolean isIdentity(){
424-
throw new UnsupportedOperationException("isIdentity is unsupported");
424+
if (isPrimitive()) {
425+
return false;
426+
}
427+
return !isInterface();
425428
}
426429
}

0 commit comments

Comments
 (0)