Revert "Combine directMethods and virtualMethods fields in Class."

This reverts commit 72d5750e02f4c44b802fbead05ce1d604b280c1a.

Change-Id: Ica6dccff0afe163a8cec8b4196a347eff3b4ffd0
diff --git a/libart/src/main/java/java/lang/Class.java b/libart/src/main/java/java/lang/Class.java
index 5d87ac3..b710867 100644
--- a/libart/src/main/java/java/lang/Class.java
+++ b/libart/src/main/java/java/lang/Class.java
@@ -189,6 +189,9 @@
     /** access flags; low 16 bits are defined by VM spec */
     private transient int accessFlags;
 
+    /** static, private, and <init> methods. */
+    private transient long directMethods;
+
     /**
      * Instance fields. These describe the layout of the contents of an Object. Note that only the
      * fields directly declared by this class are listed in iFields; fields declared by a
@@ -199,12 +202,12 @@
      */
     private transient long iFields;
 
-    /** All methods with this class as the base for virtual dispatch. */
-    private transient long methods;
-
     /** Static fields */
     private transient long sFields;
 
+    /** Virtual methods defined in this class; invoked through vtable. */
+    private transient long virtualMethods;
+
     /** Class flags to help the GC with object scanning. */
     private transient int classFlags;
 
@@ -257,12 +260,6 @@
     /** State of class initialization */
     private transient int status;
 
-    /** Offset of the first virtual method copied from an interface in the methods array. */
-    private transient short copiedMethodsOffset;
-
-    /** Offset of the first virtual method defined in this class in the methods array. */
-    private transient short virtualMethodsOffset;
-
     private Class() {
         // Prevent this class from being instantiated,
         // instances should be created by the runtime only.