diff options
| -rw-r--r-- | runtime/asm_support.h | 10 | ||||
| -rw-r--r-- | runtime/class_linker_test.cc | 1 | ||||
| -rw-r--r-- | runtime/mirror/class.h | 10 |
3 files changed, 9 insertions, 12 deletions
diff --git a/runtime/asm_support.h b/runtime/asm_support.h index e318f562c4..848f8e532c 100644 --- a/runtime/asm_support.h +++ b/runtime/asm_support.h @@ -166,19 +166,19 @@ ADD_TEST_EQ(SHADOWFRAME_VREGS_OFFSET, ADD_TEST_EQ(size_t(MIRROR_OBJECT_HEADER_SIZE), sizeof(art::mirror::Object)) // Offsets within java.lang.Class. -#define MIRROR_CLASS_COMPONENT_TYPE_OFFSET (8 + MIRROR_OBJECT_HEADER_SIZE) +#define MIRROR_CLASS_COMPONENT_TYPE_OFFSET (4 + MIRROR_OBJECT_HEADER_SIZE) ADD_TEST_EQ(MIRROR_CLASS_COMPONENT_TYPE_OFFSET, art::mirror::Class::ComponentTypeOffset().Int32Value()) -#define MIRROR_CLASS_ACCESS_FLAGS_OFFSET (36 + MIRROR_OBJECT_HEADER_SIZE) +#define MIRROR_CLASS_ACCESS_FLAGS_OFFSET (64 + MIRROR_OBJECT_HEADER_SIZE) ADD_TEST_EQ(MIRROR_CLASS_ACCESS_FLAGS_OFFSET, art::mirror::Class::AccessFlagsOffset().Int32Value()) -#define MIRROR_CLASS_OBJECT_SIZE_OFFSET (100 + MIRROR_OBJECT_HEADER_SIZE) +#define MIRROR_CLASS_OBJECT_SIZE_OFFSET (96 + MIRROR_OBJECT_HEADER_SIZE) ADD_TEST_EQ(MIRROR_CLASS_OBJECT_SIZE_OFFSET, art::mirror::Class::ObjectSizeOffset().Int32Value()) -#define MIRROR_CLASS_OBJECT_PRIMITIVE_TYPE_OFFSET (104 + MIRROR_OBJECT_HEADER_SIZE) +#define MIRROR_CLASS_OBJECT_PRIMITIVE_TYPE_OFFSET (100 + MIRROR_OBJECT_HEADER_SIZE) ADD_TEST_EQ(MIRROR_CLASS_OBJECT_PRIMITIVE_TYPE_OFFSET, art::mirror::Class::PrimitiveTypeOffset().Int32Value()) -#define MIRROR_CLASS_STATUS_OFFSET (112 + MIRROR_OBJECT_HEADER_SIZE) +#define MIRROR_CLASS_STATUS_OFFSET (108 + MIRROR_OBJECT_HEADER_SIZE) ADD_TEST_EQ(MIRROR_CLASS_STATUS_OFFSET, art::mirror::Class::StatusOffset().Int32Value()) diff --git a/runtime/class_linker_test.cc b/runtime/class_linker_test.cc index 5031cf38fd..7999aeff84 100644 --- a/runtime/class_linker_test.cc +++ b/runtime/class_linker_test.cc @@ -566,7 +566,6 @@ struct ObjectOffsets : public CheckOffsets<mirror::Object> { struct ClassOffsets : public CheckOffsets<mirror::Class> { ClassOffsets() : CheckOffsets<mirror::Class>(false, "Ljava/lang/Class;") { addOffset(OFFSETOF_MEMBER(mirror::Class, access_flags_), "accessFlags"); - addOffset(OFFSETOF_MEMBER(mirror::Class, annotation_type_), "annotationType"); addOffset(OFFSETOF_MEMBER(mirror::Class, class_flags_), "classFlags"); addOffset(OFFSETOF_MEMBER(mirror::Class, class_loader_), "classLoader"); addOffset(OFFSETOF_MEMBER(mirror::Class, class_size_), "classSize"); diff --git a/runtime/mirror/class.h b/runtime/mirror/class.h index 8f6ce44ff4..978fc4cbbf 100644 --- a/runtime/mirror/class.h +++ b/runtime/mirror/class.h @@ -568,7 +568,7 @@ class MANAGED Class FINAL : public Object { // The size of java.lang.Class.class. static uint32_t ClassClassSize(PointerSize pointer_size) { // The number of vtable entries in java.lang.Class. - uint32_t vtable_entries = Object::kVTableLength + 72; + uint32_t vtable_entries = Object::kVTableLength + 70; return ComputeClassSize(true, vtable_entries, 0, 0, 4, 1, 0, pointer_size); } @@ -1343,8 +1343,6 @@ class MANAGED Class FINAL : public Object { // 'Class' Object Fields // Order governed by java field ordering. See art::ClassLinker::LinkFields. - HeapReference<Object> annotation_type_; - // Defining class loader, or null for the "bootstrap" system loader. HeapReference<ClassLoader> class_loader_; @@ -1390,9 +1388,6 @@ class MANAGED Class FINAL : public Object { // virtual_ methods_ for miranda methods. HeapReference<PointerArray> vtable_; - // Access flags; low 16 bits are defined by VM spec. - uint32_t access_flags_; - // Short cuts to dex_cache_ member for fast compiled code access. uint64_t dex_cache_strings_; @@ -1427,6 +1422,9 @@ class MANAGED Class FINAL : public Object { // Static fields length-prefixed array. uint64_t sfields_; + // Access flags; low 16 bits are defined by VM spec. + uint32_t access_flags_; + // Class flags to help speed up visiting object references. uint32_t class_flags_; |