diff options
author | Alex Light <allight@google.com> | 2019-06-27 15:46:59 +0000 |
---|---|---|
committer | Alex Light <allight@google.com> | 2019-06-27 15:46:59 +0000 |
commit | 7c796880fe50b45aa1bac618615fe7d68a9d2bb2 (patch) | |
tree | 17e49773446870b94e000b13308b0b99531478af | |
parent | d9888496eb1cc5687a2c6e428df62427a800ca14 (diff) |
Revert^2 "Add JNI-ids arrays to ClassExt"
This reverts commit d9888496eb1cc5687a2c6e428df62427a800ca14.
This unreverts commit b79c6d4b45
Reason for revert: Fixed issue causing 004 flakes on debuggable
Test: ./test.py --host --debuggable --jit
Bug: 134162467
Change-Id: If0d6483a9c7801b88e5cec1160a5e5cbd2c6b93c
-rw-r--r-- | libart/src/main/java/dalvik/system/ClassExt.java | 39 |
1 files changed, 29 insertions, 10 deletions
diff --git a/libart/src/main/java/dalvik/system/ClassExt.java b/libart/src/main/java/dalvik/system/ClassExt.java index 9180d96c38..2c7dc6b400 100644 --- a/libart/src/main/java/dalvik/system/ClassExt.java +++ b/libart/src/main/java/dalvik/system/ClassExt.java @@ -27,6 +27,19 @@ package dalvik.system; */ public final class ClassExt { /** + * A Pointer-sized-array of instance jfieldIDs in the same order as the ifields_ array. + * The jfieldID is associated with the ArtField at the corresonding index in the ifields_ array. + */ + private Object instanceJfieldIDs; + + /** + * A Pointer-sized-array of jmethodIDS in the same order as the methods_ + * array. The jmethodID is associated with the ArtField at the corresonding + * index in the methods_ array. + */ + private Object jmethodIDs; + + /** * An array of all obsolete DexCache objects that are needed for obsolete methods. * * These entries are associated with the obsolete ArtMethod pointers at the same indexes in the @@ -63,6 +76,12 @@ public final class ClassExt { private Object originalDexFile; /** + * A Pointer-sized-array of static jfieldIDs in the same order as the sfields_ array. + * The jfieldID is associated with the ArtField at the corresonding index in the sfields_ array. + */ + private Object staticJfieldIDs; + + /** * If class verify fails, we must return same error on subsequent tries. We may store either * the class of the error, or an actual instance of Throwable here. * @@ -71,6 +90,16 @@ public final class ClassExt { private Object verifyError; /** + * ClassDef index of the related class in the pre-redefine dex file. Set together with + * {@code preRedefineDexFilePtr}. + * + * Needed in order to preserve access to dex-level hiddenapi flags after JVMTI redefine. + * + * This field is a logical part of the 'Class' type. + */ + private int preRedefineClassDefIndex; + + /** * If set, native pointer to the initial, pre-redefine, dex file associated with the related * class. This is different from the {@code originalDexFile} which is the pre-retransform dex * file, i.e. could contain the bytes of the dex file provided during redefine. @@ -86,16 +115,6 @@ public final class ClassExt { private long preRedefineDexFilePtr; /** - * ClassDef index of the related class in the pre-redefine dex file. Set together with - * {@code preRedefineDexFilePtr}. - * - * Needed in order to preserve access to dex-level hiddenapi flags after JVMTI redefine. - * - * This field is a logical part of the 'Class' type. - */ - private int preRedefineClassDefIndex; - - /** * Private constructor. * * Only created by the runtime. |