diff options
-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. |