Mercurial > hg > graal-jvmci-8
comparison jvmci/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/HotSpotResolvedObjectTypeImpl.java @ 24111:8abcd8e1285d
missing checks in HotSpotMemoryAccessProviderImpl can cause VM assertions to fail (JDK-8177673)
author | Doug Simon <doug.simon@oracle.com> |
---|---|
date | Thu, 30 Mar 2017 21:18:43 +0200 |
parents | 839dcc4f2cf6 |
children | 6d70d9c43369 |
comparison
equal
deleted
inserted
replaced
24110:a8378ff1936d | 24111:8abcd8e1285d |
---|---|
840 } | 840 } |
841 | 841 |
842 @Override | 842 @Override |
843 public ResolvedJavaField findInstanceFieldWithOffset(long offset, JavaKind expectedEntryKind) { | 843 public ResolvedJavaField findInstanceFieldWithOffset(long offset, JavaKind expectedEntryKind) { |
844 ResolvedJavaField[] declaredFields = getInstanceFields(true); | 844 ResolvedJavaField[] declaredFields = getInstanceFields(true); |
845 return findFieldWithOffset(offset, expectedEntryKind, declaredFields); | |
846 } | |
847 | |
848 public ResolvedJavaField findStaticFieldWithOffset(long offset, JavaKind expectedEntryKind) { | |
849 ResolvedJavaField[] declaredFields = getStaticFields(); | |
850 return findFieldWithOffset(offset, expectedEntryKind, declaredFields); | |
851 } | |
852 | |
853 private static ResolvedJavaField findFieldWithOffset(long offset, JavaKind expectedEntryKind, ResolvedJavaField[] declaredFields) { | |
845 for (ResolvedJavaField field : declaredFields) { | 854 for (ResolvedJavaField field : declaredFields) { |
846 HotSpotResolvedJavaField resolvedField = (HotSpotResolvedJavaField) field; | 855 HotSpotResolvedJavaField resolvedField = (HotSpotResolvedJavaField) field; |
847 long resolvedFieldOffset = resolvedField.offset(); | 856 long resolvedFieldOffset = resolvedField.offset(); |
848 // @formatter:off | 857 // @formatter:off |
849 if (ByteOrder.nativeOrder() == ByteOrder.BIG_ENDIAN && | 858 if (ByteOrder.nativeOrder() == ByteOrder.BIG_ENDIAN && |