summaryrefslogtreecommitdiff
path: root/runtime
diff options
context:
space:
mode:
author Igor Murashkin <iam@google.com> 2017-09-08 03:21:54 +0000
committer Igor Murashkin <iam@google.com> 2017-09-08 03:21:54 +0000
commitcf83aaa468fa1b87746ac2e8ca95e80aa8c29a81 (patch)
tree2e74a2ac49fab21ce80f5b7e11a7c5e77097d735 /runtime
parentde07216fe9824f68ba76bf4c14158ec4f55af2cb (diff)
Revert "mirror: Make Class::Status 64-bit field"
This reverts commit de07216fe9824f68ba76bf4c14158ec4f55af2cb. Reason for revert: <INSERT REASONING HERE> Change-Id: Id86866a14ad7caf8e23181be19fc750cb3f46667
Diffstat (limited to 'runtime')
-rw-r--r--runtime/asm_support.h14
-rw-r--r--runtime/mirror/class.h6
2 files changed, 10 insertions, 10 deletions
diff --git a/runtime/asm_support.h b/runtime/asm_support.h
index b1cc9ce872..f4830e2db5 100644
--- a/runtime/asm_support.h
+++ b/runtime/asm_support.h
@@ -159,21 +159,21 @@ ADD_TEST_EQ(MIRROR_CLASS_COMPONENT_TYPE_OFFSET,
#define MIRROR_CLASS_IF_TABLE_OFFSET (16 + MIRROR_OBJECT_HEADER_SIZE)
ADD_TEST_EQ(MIRROR_CLASS_IF_TABLE_OFFSET,
art::mirror::Class::IfTableOffset().Int32Value())
-#define MIRROR_CLASS_STATUS_OFFSET (56 + MIRROR_OBJECT_HEADER_SIZE)
-ADD_TEST_EQ(MIRROR_CLASS_STATUS_OFFSET,
- art::mirror::Class::StatusOffset().Int32Value())
-#define MIRROR_CLASS_ACCESS_FLAGS_OFFSET (64 + MIRROR_OBJECT_HEADER_SIZE)
+#define MIRROR_CLASS_ACCESS_FLAGS_OFFSET (56 + MIRROR_OBJECT_HEADER_SIZE)
ADD_TEST_EQ(MIRROR_CLASS_ACCESS_FLAGS_OFFSET,
art::mirror::Class::AccessFlagsOffset().Int32Value())
-#define MIRROR_CLASS_OBJECT_SIZE_OFFSET (96 + MIRROR_OBJECT_HEADER_SIZE)
+#define MIRROR_CLASS_OBJECT_SIZE_OFFSET (88 + MIRROR_OBJECT_HEADER_SIZE)
ADD_TEST_EQ(MIRROR_CLASS_OBJECT_SIZE_OFFSET,
art::mirror::Class::ObjectSizeOffset().Int32Value())
-#define MIRROR_CLASS_OBJECT_SIZE_ALLOC_FAST_PATH_OFFSET (100 + MIRROR_OBJECT_HEADER_SIZE)
+#define MIRROR_CLASS_OBJECT_SIZE_ALLOC_FAST_PATH_OFFSET (92 + MIRROR_OBJECT_HEADER_SIZE)
ADD_TEST_EQ(MIRROR_CLASS_OBJECT_SIZE_ALLOC_FAST_PATH_OFFSET,
art::mirror::Class::ObjectSizeAllocFastPathOffset().Int32Value())
-#define MIRROR_CLASS_OBJECT_PRIMITIVE_TYPE_OFFSET (104 + MIRROR_OBJECT_HEADER_SIZE)
+#define MIRROR_CLASS_OBJECT_PRIMITIVE_TYPE_OFFSET (96 + MIRROR_OBJECT_HEADER_SIZE)
ADD_TEST_EQ(MIRROR_CLASS_OBJECT_PRIMITIVE_TYPE_OFFSET,
art::mirror::Class::PrimitiveTypeOffset().Int32Value())
+#define MIRROR_CLASS_STATUS_OFFSET (104 + MIRROR_OBJECT_HEADER_SIZE)
+ADD_TEST_EQ(MIRROR_CLASS_STATUS_OFFSET,
+ art::mirror::Class::StatusOffset().Int32Value())
#define PRIMITIVE_TYPE_SIZE_SHIFT_SHIFT 16
ADD_TEST_EQ(PRIMITIVE_TYPE_SIZE_SHIFT_SHIFT,
diff --git a/runtime/mirror/class.h b/runtime/mirror/class.h
index c752e33808..4c9b1464dc 100644
--- a/runtime/mirror/class.h
+++ b/runtime/mirror/class.h
@@ -1434,9 +1434,6 @@ class MANAGED Class FINAL : public Object {
// Static fields length-prefixed array.
uint64_t sfields_;
- // State of class initialization.
- uint64_t status_;
-
// Access flags; low 16 bits are defined by VM spec.
uint32_t access_flags_;
@@ -1480,6 +1477,9 @@ class MANAGED Class FINAL : public Object {
// Bitmap of offsets of ifields.
uint32_t reference_instance_offsets_;
+ // State of class initialization.
+ Status status_;
+
// The offset of the first virtual method that is copied from an interface. This includes miranda,
// default, and default-conflict methods. Having a hard limit of ((2 << 16) - 1) for methods
// defined on a single class is well established in Java so we will use only uint16_t's here.