summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libart/src/main/java/dalvik/system/ClassExt.java39
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.