diff options
| -rw-r--r-- | runtime/asm_support.h | 14 | ||||
| -rw-r--r-- | runtime/mirror/class.h | 6 | ||||
| -rw-r--r-- | test/913-heaps/expected.txt | 256 | ||||
| -rw-r--r-- | test/knownfailures.json | 6 |
4 files changed, 144 insertions, 138 deletions
diff --git a/runtime/asm_support.h b/runtime/asm_support.h index f4830e2db5..b1cc9ce872 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_ACCESS_FLAGS_OFFSET (56 + MIRROR_OBJECT_HEADER_SIZE) +#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) ADD_TEST_EQ(MIRROR_CLASS_ACCESS_FLAGS_OFFSET, art::mirror::Class::AccessFlagsOffset().Int32Value()) -#define MIRROR_CLASS_OBJECT_SIZE_OFFSET (88 + 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_SIZE_ALLOC_FAST_PATH_OFFSET (92 + MIRROR_OBJECT_HEADER_SIZE) +#define MIRROR_CLASS_OBJECT_SIZE_ALLOC_FAST_PATH_OFFSET (100 + 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 (96 + MIRROR_OBJECT_HEADER_SIZE) +#define MIRROR_CLASS_OBJECT_PRIMITIVE_TYPE_OFFSET (104 + 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 4c9b1464dc..c752e33808 100644 --- a/runtime/mirror/class.h +++ b/runtime/mirror/class.h @@ -1434,6 +1434,9 @@ 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_; @@ -1477,9 +1480,6 @@ 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. diff --git a/test/913-heaps/expected.txt b/test/913-heaps/expected.txt index 6144881a55..2ec0f942ae 100644 --- a/test/913-heaps/expected.txt +++ b/test/913-heaps/expected.txt @@ -5,43 +5,43 @@ root@root --(stack-local[id=1,tag=3000,depth=2,method=doFollowReferencesTestNonR root@root --(stack-local[id=1,tag=3000,depth=3,method=doFollowReferencesTest,vreg=1,location= 28])--> 3000@0 [size=136, length=-1] root@root --(stack-local[id=1,tag=3000,depth=5,method=run,vreg=2,location= 0])--> 3000@0 [size=136, length=-1] root@root --(thread)--> 3000@0 [size=136, length=-1] -1001@0 --(superclass)--> 1000@0 [size=123, length=-1] -1002@0 --(interface)--> 2001@0 [size=124, length=-1] -1002@0 --(superclass)--> 1001@0 [size=123, length=-1] -1@1000 --(class)--> 1000@0 [size=123, length=-1] +1001@0 --(superclass)--> 1000@0 [size=176, length=-1] +1002@0 --(interface)--> 2001@0 [size=128, length=-1] +1002@0 --(superclass)--> 1001@0 [size=176, length=-1] +1@1000 --(class)--> 1000@0 [size=176, length=-1] 1@1000 --(field@2)--> 2@1000 [size=16, length=-1] 1@1000 --(field@3)--> 3@1001 [size=24, length=-1] -2001@0 --(interface)--> 2000@0 [size=124, length=-1] -2@1000 --(class)--> 1000@0 [size=123, length=-1] -3@1001 --(class)--> 1001@0 [size=123, length=-1] +2001@0 --(interface)--> 2000@0 [size=128, length=-1] +2@1000 --(class)--> 1000@0 [size=176, length=-1] +3@1001 --(class)--> 1001@0 [size=176, length=-1] 3@1001 --(field@4)--> 4@1000 [size=16, length=-1] 3@1001 --(field@5)--> 5@1002 [size=36, length=-1] -4@1000 --(class)--> 1000@0 [size=123, length=-1] +4@1000 --(class)--> 1000@0 [size=176, length=-1] 500@0 --(array-element@1)--> 2@1000 [size=16, length=-1] -5@1002 --(class)--> 1002@0 [size=123, length=-1] +5@1002 --(class)--> 1002@0 [size=176, length=-1] 5@1002 --(field@10)--> 1@1000 [size=16, length=-1] 5@1002 --(field@8)--> 500@0 [size=20, length=2] 5@1002 --(field@9)--> 6@1000 [size=16, length=-1] -6@1000 --(class)--> 1000@0 [size=123, length=-1] +6@1000 --(class)--> 1000@0 [size=176, length=-1] --- -1001@0 --(superclass)--> 1000@0 [size=123, length=-1] -1002@0 --(interface)--> 2001@0 [size=124, length=-1] -1002@0 --(superclass)--> 1001@0 [size=123, length=-1] -1@1000 --(class)--> 1000@0 [size=123, length=-1] +1001@0 --(superclass)--> 1000@0 [size=176, length=-1] +1002@0 --(interface)--> 2001@0 [size=128, length=-1] +1002@0 --(superclass)--> 1001@0 [size=176, length=-1] +1@1000 --(class)--> 1000@0 [size=176, length=-1] 1@1000 --(field@2)--> 2@1000 [size=16, length=-1] 1@1000 --(field@3)--> 3@1001 [size=24, length=-1] -2001@0 --(interface)--> 2000@0 [size=124, length=-1] -2@1000 --(class)--> 1000@0 [size=123, length=-1] -3@1001 --(class)--> 1001@0 [size=123, length=-1] +2001@0 --(interface)--> 2000@0 [size=128, length=-1] +2@1000 --(class)--> 1000@0 [size=176, length=-1] +3@1001 --(class)--> 1001@0 [size=176, length=-1] 3@1001 --(field@4)--> 4@1000 [size=16, length=-1] 3@1001 --(field@5)--> 5@1002 [size=36, length=-1] -4@1000 --(class)--> 1000@0 [size=123, length=-1] +4@1000 --(class)--> 1000@0 [size=176, length=-1] 500@0 --(array-element@1)--> 2@1000 [size=16, length=-1] -5@1002 --(class)--> 1002@0 [size=123, length=-1] +5@1002 --(class)--> 1002@0 [size=176, length=-1] 5@1002 --(field@10)--> 1@1000 [size=16, length=-1] 5@1002 --(field@8)--> 500@0 [size=20, length=2] 5@1002 --(field@9)--> 6@1000 [size=16, length=-1] -6@1000 --(class)--> 1000@0 [size=123, length=-1] +6@1000 --(class)--> 1000@0 [size=176, length=-1] --- root@root --(jni-global)--> 1@1000 [size=16, length=-1] root@root --(jni-local[id=1,tag=3000,depth=0,method=followReferences])--> 1@1000 [size=16, length=-1] @@ -52,51 +52,51 @@ root@root --(stack-local[id=1,tag=3000,depth=2,method=doFollowReferencesTestRoot root@root --(stack-local[id=1,tag=3000,depth=5,method=run,vreg=2,location= 0])--> 3000@0 [size=136, length=-1] root@root --(thread)--> 1@1000 [size=16, length=-1] root@root --(thread)--> 3000@0 [size=136, length=-1] -1001@0 --(superclass)--> 1000@0 [size=123, length=-1] -1002@0 --(interface)--> 2001@0 [size=124, length=-1] -1002@0 --(superclass)--> 1001@0 [size=123, length=-1] -1@1000 --(class)--> 1000@0 [size=123, length=-1] +1001@0 --(superclass)--> 1000@0 [size=176, length=-1] +1002@0 --(interface)--> 2001@0 [size=128, length=-1] +1002@0 --(superclass)--> 1001@0 [size=176, length=-1] +1@1000 --(class)--> 1000@0 [size=176, length=-1] 1@1000 --(field@2)--> 2@1000 [size=16, length=-1] 1@1000 --(field@3)--> 3@1001 [size=24, length=-1] -2001@0 --(interface)--> 2000@0 [size=124, length=-1] -2@1000 --(class)--> 1000@0 [size=123, length=-1] -3@1001 --(class)--> 1001@0 [size=123, length=-1] +2001@0 --(interface)--> 2000@0 [size=128, length=-1] +2@1000 --(class)--> 1000@0 [size=176, length=-1] +3@1001 --(class)--> 1001@0 [size=176, length=-1] 3@1001 --(field@4)--> 4@1000 [size=16, length=-1] 3@1001 --(field@5)--> 5@1002 [size=36, length=-1] -4@1000 --(class)--> 1000@0 [size=123, length=-1] +4@1000 --(class)--> 1000@0 [size=176, length=-1] 500@0 --(array-element@1)--> 2@1000 [size=16, length=-1] -5@1002 --(class)--> 1002@0 [size=123, length=-1] +5@1002 --(class)--> 1002@0 [size=176, length=-1] 5@1002 --(field@10)--> 1@1000 [size=16, length=-1] 5@1002 --(field@8)--> 500@0 [size=20, length=2] 5@1002 --(field@9)--> 6@1000 [size=16, length=-1] -6@1000 --(class)--> 1000@0 [size=123, length=-1] +6@1000 --(class)--> 1000@0 [size=176, length=-1] --- -1001@0 --(superclass)--> 1000@0 [size=123, length=-1] -1002@0 --(interface)--> 2001@0 [size=124, length=-1] -1002@0 --(superclass)--> 1001@0 [size=123, length=-1] -1@1000 --(class)--> 1000@0 [size=123, length=-1] +1001@0 --(superclass)--> 1000@0 [size=176, length=-1] +1002@0 --(interface)--> 2001@0 [size=128, length=-1] +1002@0 --(superclass)--> 1001@0 [size=176, length=-1] +1@1000 --(class)--> 1000@0 [size=176, length=-1] 1@1000 --(field@2)--> 2@1000 [size=16, length=-1] 1@1000 --(field@3)--> 3@1001 [size=24, length=-1] -2001@0 --(interface)--> 2000@0 [size=124, length=-1] -2@1000 --(class)--> 1000@0 [size=123, length=-1] -3@1001 --(class)--> 1001@0 [size=123, length=-1] +2001@0 --(interface)--> 2000@0 [size=128, length=-1] +2@1000 --(class)--> 1000@0 [size=176, length=-1] +3@1001 --(class)--> 1001@0 [size=176, length=-1] 3@1001 --(field@4)--> 4@1000 [size=16, length=-1] 3@1001 --(field@5)--> 5@1002 [size=36, length=-1] -4@1000 --(class)--> 1000@0 [size=123, length=-1] +4@1000 --(class)--> 1000@0 [size=176, length=-1] 500@0 --(array-element@1)--> 2@1000 [size=16, length=-1] -5@1002 --(class)--> 1002@0 [size=123, length=-1] +5@1002 --(class)--> 1002@0 [size=176, length=-1] 5@1002 --(field@10)--> 1@1000 [size=16, length=-1] 5@1002 --(field@8)--> 500@0 [size=20, length=2] 5@1002 --(field@9)--> 6@1000 [size=16, length=-1] -6@1000 --(class)--> 1000@0 [size=123, length=-1] +6@1000 --(class)--> 1000@0 [size=176, length=-1] --- root@root --(thread)--> 3000@0 [size=136, length=-1] --- -3@1001 --(class)--> 1001@0 [size=123, length=-1] +3@1001 --(class)--> 1001@0 [size=176, length=-1] --- root@root --(thread)--> 3000@0 [size=136, length=-1] --- -3@1001 --(class)--> 1001@0 [size=123, length=-1] +3@1001 --(class)--> 1001@0 [size=176, length=-1] --- root@root --(jni-local[id=1,tag=3000,depth=0,method=followReferences])--> 3000@0 [size=136, length=-1] root@root --(stack-local[id=1,tag=3000,depth=2,method=doFollowReferencesTestNonRoot,vreg=13,location= 30])--> 1@1000 [size=16, length=-1] @@ -104,8 +104,8 @@ root@root --(stack-local[id=1,tag=3000,depth=3,method=doFollowReferencesTest,vre root@root --(stack-local[id=1,tag=3000,depth=5,method=run,vreg=2,location= 0])--> 3000@0 [size=136, length=-1] root@root --(thread)--> 3000@0 [size=136, length=-1] --- -1001@0 --(superclass)--> 1000@0 [size=123, length=-1] -3@1001 --(class)--> 1001@0 [size=123, length=-1] +1001@0 --(superclass)--> 1000@0 [size=176, length=-1] +3@1001 --(class)--> 1001@0 [size=176, length=-1] 3@1001 --(field@4)--> 4@1000 [size=16, length=-1] 3@1001 --(field@5)--> 5@1002 [size=36, length=-1] --- @@ -119,8 +119,8 @@ root@root --(stack-local[id=1,tag=3000,depth=5,method=run,vreg=2,location= 0])-- root@root --(thread)--> 1@1000 [size=16, length=-1] root@root --(thread)--> 3000@0 [size=136, length=-1] --- -1001@0 --(superclass)--> 1000@0 [size=123, length=-1] -3@1001 --(class)--> 1001@0 [size=123, length=-1] +1001@0 --(superclass)--> 1000@0 [size=176, length=-1] +3@1001 --(class)--> 1001@0 [size=176, length=-1] 3@1001 --(field@4)--> 4@1000 [size=16, length=-1] 3@1001 --(field@5)--> 5@1002 [size=36, length=-1] --- @@ -202,43 +202,43 @@ root@root --(stack-local[id=1,tag=3000,depth=2,method=doFollowReferencesTestNonR root@root --(stack-local[id=1,tag=3000,depth=3,method=doFollowReferencesTest,vreg=1,location= 28])--> 3000@0 [size=136, length=-1] root@root --(stack-local[id=1,tag=3000,depth=5,method=run,vreg=2,location= 0])--> 3000@0 [size=136, length=-1] root@root --(thread)--> 3000@0 [size=136, length=-1] -1001@0 --(superclass)--> 1000@0 [size=123, length=-1] -1002@0 --(interface)--> 2001@0 [size=124, length=-1] -1002@0 --(superclass)--> 1001@0 [size=123, length=-1] -1@1000 --(class)--> 1000@0 [size=123, length=-1] +1001@0 --(superclass)--> 1000@0 [size=176, length=-1] +1002@0 --(interface)--> 2001@0 [size=128, length=-1] +1002@0 --(superclass)--> 1001@0 [size=176, length=-1] +1@1000 --(class)--> 1000@0 [size=176, length=-1] 1@1000 --(field@2)--> 2@1000 [size=16, length=-1] 1@1000 --(field@3)--> 3@1001 [size=24, length=-1] -2001@0 --(interface)--> 2000@0 [size=124, length=-1] -2@1000 --(class)--> 1000@0 [size=123, length=-1] -3@1001 --(class)--> 1001@0 [size=123, length=-1] +2001@0 --(interface)--> 2000@0 [size=128, length=-1] +2@1000 --(class)--> 1000@0 [size=176, length=-1] +3@1001 --(class)--> 1001@0 [size=176, length=-1] 3@1001 --(field@4)--> 4@1000 [size=16, length=-1] 3@1001 --(field@5)--> 5@1002 [size=36, length=-1] -4@1000 --(class)--> 1000@0 [size=123, length=-1] +4@1000 --(class)--> 1000@0 [size=176, length=-1] 500@0 --(array-element@1)--> 2@1000 [size=16, length=-1] -5@1002 --(class)--> 1002@0 [size=123, length=-1] +5@1002 --(class)--> 1002@0 [size=176, length=-1] 5@1002 --(field@10)--> 1@1000 [size=16, length=-1] 5@1002 --(field@8)--> 500@0 [size=20, length=2] 5@1002 --(field@9)--> 6@1000 [size=16, length=-1] -6@1000 --(class)--> 1000@0 [size=123, length=-1] +6@1000 --(class)--> 1000@0 [size=176, length=-1] --- -1001@0 --(superclass)--> 1000@0 [size=123, length=-1] -1002@0 --(interface)--> 2001@0 [size=124, length=-1] -1002@0 --(superclass)--> 1001@0 [size=123, length=-1] -1@1000 --(class)--> 1000@0 [size=123, length=-1] +1001@0 --(superclass)--> 1000@0 [size=176, length=-1] +1002@0 --(interface)--> 2001@0 [size=128, length=-1] +1002@0 --(superclass)--> 1001@0 [size=176, length=-1] +1@1000 --(class)--> 1000@0 [size=176, length=-1] 1@1000 --(field@2)--> 2@1000 [size=16, length=-1] 1@1000 --(field@3)--> 3@1001 [size=24, length=-1] -2001@0 --(interface)--> 2000@0 [size=124, length=-1] -2@1000 --(class)--> 1000@0 [size=123, length=-1] -3@1001 --(class)--> 1001@0 [size=123, length=-1] +2001@0 --(interface)--> 2000@0 [size=128, length=-1] +2@1000 --(class)--> 1000@0 [size=176, length=-1] +3@1001 --(class)--> 1001@0 [size=176, length=-1] 3@1001 --(field@4)--> 4@1000 [size=16, length=-1] 3@1001 --(field@5)--> 5@1002 [size=36, length=-1] -4@1000 --(class)--> 1000@0 [size=123, length=-1] +4@1000 --(class)--> 1000@0 [size=176, length=-1] 500@0 --(array-element@1)--> 2@1000 [size=16, length=-1] -5@1002 --(class)--> 1002@0 [size=123, length=-1] +5@1002 --(class)--> 1002@0 [size=176, length=-1] 5@1002 --(field@10)--> 1@1000 [size=16, length=-1] 5@1002 --(field@8)--> 500@0 [size=20, length=2] 5@1002 --(field@9)--> 6@1000 [size=16, length=-1] -6@1000 --(class)--> 1000@0 [size=123, length=-1] +6@1000 --(class)--> 1000@0 [size=176, length=-1] --- root@root --(jni-global)--> 1@1000 [size=16, length=-1] root@root --(jni-local[id=1,tag=3000,depth=0,method=followReferences])--> 1@1000 [size=16, length=-1] @@ -249,99 +249,99 @@ root@root --(stack-local[id=1,tag=3000,depth=2,method=doFollowReferencesTestRoot root@root --(stack-local[id=1,tag=3000,depth=5,method=run,vreg=2,location= 0])--> 3000@0 [size=136, length=-1] root@root --(thread)--> 1@1000 [size=16, length=-1] root@root --(thread)--> 3000@0 [size=136, length=-1] -1001@0 --(superclass)--> 1000@0 [size=123, length=-1] -1002@0 --(interface)--> 2001@0 [size=124, length=-1] -1002@0 --(superclass)--> 1001@0 [size=123, length=-1] -1@1000 --(class)--> 1000@0 [size=123, length=-1] +1001@0 --(superclass)--> 1000@0 [size=176, length=-1] +1002@0 --(interface)--> 2001@0 [size=128, length=-1] +1002@0 --(superclass)--> 1001@0 [size=176, length=-1] +1@1000 --(class)--> 1000@0 [size=176, length=-1] 1@1000 --(field@2)--> 2@1000 [size=16, length=-1] 1@1000 --(field@3)--> 3@1001 [size=24, length=-1] -2001@0 --(interface)--> 2000@0 [size=124, length=-1] -2@1000 --(class)--> 1000@0 [size=123, length=-1] -3@1001 --(class)--> 1001@0 [size=123, length=-1] +2001@0 --(interface)--> 2000@0 [size=128, length=-1] +2@1000 --(class)--> 1000@0 [size=176, length=-1] +3@1001 --(class)--> 1001@0 [size=176, length=-1] 3@1001 --(field@4)--> 4@1000 [size=16, length=-1] 3@1001 --(field@5)--> 5@1002 [size=36, length=-1] -4@1000 --(class)--> 1000@0 [size=123, length=-1] +4@1000 --(class)--> 1000@0 [size=176, length=-1] 500@0 --(array-element@1)--> 2@1000 [size=16, length=-1] -5@1002 --(class)--> 1002@0 [size=123, length=-1] +5@1002 --(class)--> 1002@0 [size=176, length=-1] 5@1002 --(field@10)--> 1@1000 [size=16, length=-1] 5@1002 --(field@8)--> 500@0 [size=20, length=2] 5@1002 --(field@9)--> 6@1000 [size=16, length=-1] -6@1000 --(class)--> 1000@0 [size=123, length=-1] +6@1000 --(class)--> 1000@0 [size=176, length=-1] --- -1001@0 --(superclass)--> 1000@0 [size=123, length=-1] -1002@0 --(interface)--> 2001@0 [size=124, length=-1] -1002@0 --(superclass)--> 1001@0 [size=123, length=-1] -1@1000 --(class)--> 1000@0 [size=123, length=-1] +1001@0 --(superclass)--> 1000@0 [size=176, length=-1] +1002@0 --(interface)--> 2001@0 [size=128, length=-1] +1002@0 --(superclass)--> 1001@0 [size=176, length=-1] +1@1000 --(class)--> 1000@0 [size=176, length=-1] 1@1000 --(field@2)--> 2@1000 [size=16, length=-1] 1@1000 --(field@3)--> 3@1001 [size=24, length=-1] -2001@0 --(interface)--> 2000@0 [size=124, length=-1] -2@1000 --(class)--> 1000@0 [size=123, length=-1] -3@1001 --(class)--> 1001@0 [size=123, length=-1] +2001@0 --(interface)--> 2000@0 [size=128, length=-1] +2@1000 --(class)--> 1000@0 [size=176, length=-1] +3@1001 --(class)--> 1001@0 [size=176, length=-1] 3@1001 --(field@4)--> 4@1000 [size=16, length=-1] 3@1001 --(field@5)--> 5@1002 [size=36, length=-1] -4@1000 --(class)--> 1000@0 [size=123, length=-1] +4@1000 --(class)--> 1000@0 [size=176, length=-1] 500@0 --(array-element@1)--> 2@1000 [size=16, length=-1] -5@1002 --(class)--> 1002@0 [size=123, length=-1] +5@1002 --(class)--> 1002@0 [size=176, length=-1] 5@1002 --(field@10)--> 1@1000 [size=16, length=-1] 5@1002 --(field@8)--> 500@0 [size=20, length=2] 5@1002 --(field@9)--> 6@1000 [size=16, length=-1] -6@1000 --(class)--> 1000@0 [size=123, length=-1] +6@1000 --(class)--> 1000@0 [size=176, length=-1] --- ---- tagged classes root@root --(jni-local[id=1,tag=3000,depth=0,method=followReferences])--> 3000@0 [size=136, length=-1] root@root --(stack-local[id=1,tag=3000,depth=3,method=doFollowReferencesTest,vreg=1,location= 28])--> 3000@0 [size=136, length=-1] root@root --(stack-local[id=1,tag=3000,depth=5,method=run,vreg=2,location= 0])--> 3000@0 [size=136, length=-1] root@root --(thread)--> 3000@0 [size=136, length=-1] -1001@0 --(superclass)--> 1000@0 [size=123, length=-1] -1002@0 --(interface)--> 2001@0 [size=124, length=-1] -1002@0 --(superclass)--> 1001@0 [size=123, length=-1] -1@1000 --(class)--> 1000@0 [size=123, length=-1] -2001@0 --(interface)--> 2000@0 [size=124, length=-1] -2@1000 --(class)--> 1000@0 [size=123, length=-1] -3@1001 --(class)--> 1001@0 [size=123, length=-1] -4@1000 --(class)--> 1000@0 [size=123, length=-1] -5@1002 --(class)--> 1002@0 [size=123, length=-1] +1001@0 --(superclass)--> 1000@0 [size=176, length=-1] +1002@0 --(interface)--> 2001@0 [size=128, length=-1] +1002@0 --(superclass)--> 1001@0 [size=176, length=-1] +1@1000 --(class)--> 1000@0 [size=176, length=-1] +2001@0 --(interface)--> 2000@0 [size=128, length=-1] +2@1000 --(class)--> 1000@0 [size=176, length=-1] +3@1001 --(class)--> 1001@0 [size=176, length=-1] +4@1000 --(class)--> 1000@0 [size=176, length=-1] +5@1002 --(class)--> 1002@0 [size=176, length=-1] 5@1002 --(field@8)--> 500@0 [size=20, length=2] -6@1000 --(class)--> 1000@0 [size=123, length=-1] ---- -1001@0 --(superclass)--> 1000@0 [size=123, length=-1] -1002@0 --(interface)--> 2001@0 [size=124, length=-1] -1002@0 --(superclass)--> 1001@0 [size=123, length=-1] -1@1000 --(class)--> 1000@0 [size=123, length=-1] -2001@0 --(interface)--> 2000@0 [size=124, length=-1] -2@1000 --(class)--> 1000@0 [size=123, length=-1] -3@1001 --(class)--> 1001@0 [size=123, length=-1] -4@1000 --(class)--> 1000@0 [size=123, length=-1] -5@1002 --(class)--> 1002@0 [size=123, length=-1] +6@1000 --(class)--> 1000@0 [size=176, length=-1] +--- +1001@0 --(superclass)--> 1000@0 [size=176, length=-1] +1002@0 --(interface)--> 2001@0 [size=128, length=-1] +1002@0 --(superclass)--> 1001@0 [size=176, length=-1] +1@1000 --(class)--> 1000@0 [size=176, length=-1] +2001@0 --(interface)--> 2000@0 [size=128, length=-1] +2@1000 --(class)--> 1000@0 [size=176, length=-1] +3@1001 --(class)--> 1001@0 [size=176, length=-1] +4@1000 --(class)--> 1000@0 [size=176, length=-1] +5@1002 --(class)--> 1002@0 [size=176, length=-1] 5@1002 --(field@8)--> 500@0 [size=20, length=2] -6@1000 --(class)--> 1000@0 [size=123, length=-1] +6@1000 --(class)--> 1000@0 [size=176, length=-1] --- root@root --(jni-local[id=1,tag=3000,depth=0,method=followReferences])--> 3000@0 [size=136, length=-1] root@root --(stack-local[id=1,tag=3000,depth=5,method=run,vreg=2,location= 0])--> 3000@0 [size=136, length=-1] root@root --(thread)--> 3000@0 [size=136, length=-1] -1001@0 --(superclass)--> 1000@0 [size=123, length=-1] -1002@0 --(interface)--> 2001@0 [size=124, length=-1] -1002@0 --(superclass)--> 1001@0 [size=123, length=-1] -1@1000 --(class)--> 1000@0 [size=123, length=-1] -2001@0 --(interface)--> 2000@0 [size=124, length=-1] -2@1000 --(class)--> 1000@0 [size=123, length=-1] -3@1001 --(class)--> 1001@0 [size=123, length=-1] -4@1000 --(class)--> 1000@0 [size=123, length=-1] -5@1002 --(class)--> 1002@0 [size=123, length=-1] +1001@0 --(superclass)--> 1000@0 [size=176, length=-1] +1002@0 --(interface)--> 2001@0 [size=128, length=-1] +1002@0 --(superclass)--> 1001@0 [size=176, length=-1] +1@1000 --(class)--> 1000@0 [size=176, length=-1] +2001@0 --(interface)--> 2000@0 [size=128, length=-1] +2@1000 --(class)--> 1000@0 [size=176, length=-1] +3@1001 --(class)--> 1001@0 [size=176, length=-1] +4@1000 --(class)--> 1000@0 [size=176, length=-1] +5@1002 --(class)--> 1002@0 [size=176, length=-1] 5@1002 --(field@8)--> 500@0 [size=20, length=2] -6@1000 --(class)--> 1000@0 [size=123, length=-1] ---- -1001@0 --(superclass)--> 1000@0 [size=123, length=-1] -1002@0 --(interface)--> 2001@0 [size=124, length=-1] -1002@0 --(superclass)--> 1001@0 [size=123, length=-1] -1@1000 --(class)--> 1000@0 [size=123, length=-1] -2001@0 --(interface)--> 2000@0 [size=124, length=-1] -2@1000 --(class)--> 1000@0 [size=123, length=-1] -3@1001 --(class)--> 1001@0 [size=123, length=-1] -4@1000 --(class)--> 1000@0 [size=123, length=-1] -5@1002 --(class)--> 1002@0 [size=123, length=-1] +6@1000 --(class)--> 1000@0 [size=176, length=-1] +--- +1001@0 --(superclass)--> 1000@0 [size=176, length=-1] +1002@0 --(interface)--> 2001@0 [size=128, length=-1] +1002@0 --(superclass)--> 1001@0 [size=176, length=-1] +1@1000 --(class)--> 1000@0 [size=176, length=-1] +2001@0 --(interface)--> 2000@0 [size=128, length=-1] +2@1000 --(class)--> 1000@0 [size=176, length=-1] +3@1001 --(class)--> 1001@0 [size=176, length=-1] +4@1000 --(class)--> 1000@0 [size=176, length=-1] +5@1002 --(class)--> 1002@0 [size=176, length=-1] 5@1002 --(field@8)--> 500@0 [size=20, length=2] -6@1000 --(class)--> 1000@0 [size=123, length=-1] +6@1000 --(class)--> 1000@0 [size=176, length=-1] --- ---- untagged classes root@root --(stack-local[id=1,tag=3000,depth=2,method=doFollowReferencesTestNonRoot,vreg=13,location= 30])--> 1@1000 [size=16, length=-1] diff --git a/test/knownfailures.json b/test/knownfailures.json index 84758c9f54..2a8a8799a9 100644 --- a/test/knownfailures.json +++ b/test/knownfailures.json @@ -736,5 +736,11 @@ "tests": "664-aget-verifier", "description": ["Aget on potentially null array fails verification."], "bug": "b/64683522" + }, + { + "tests": "913-heaps", + "description": ["Fails on 64-bit"], + "variant": "64", + "bug": "b/65459070" } ] |