diff options
Diffstat (limited to 'vm/Sync.c')
-rw-r--r-- | vm/Sync.c | 36 |
1 files changed, 1 insertions, 35 deletions
@@ -1216,40 +1216,6 @@ u4 dvmIdentityHashCode(Object *obj) return (u4)obj; } #else -static size_t arrayElementWidth(const ArrayObject *array) -{ - const char *descriptor; - - if (dvmIsObjectArray(array)) { - return sizeof(Object *); - } else { - descriptor = array->obj.clazz->descriptor; - switch (descriptor[1]) { - case 'B': return 1; /* byte */ - case 'C': return 2; /* char */ - case 'D': return 8; /* double */ - case 'F': return 4; /* float */ - case 'I': return 4; /* int */ - case 'J': return 8; /* long */ - case 'S': return 2; /* short */ - case 'Z': return 1; /* boolean */ - } - } - LOGE("object %p has an unhandled descriptor '%s'", array, descriptor); - dvmDumpThread(dvmThreadSelf(), false); - dvmAbort(); - return 0; /* Quiet the compiler. */ -} - -static size_t arrayObjectLength(const ArrayObject *array) -{ - size_t length; - - length = offsetof(ArrayObject, contents); - length += array->length * arrayElementWidth(array); - return length; -} - /* * Returns the identity hash code of the given object. */ @@ -1283,7 +1249,7 @@ retry: * aligned word following the instance data. */ if (IS_CLASS_FLAG_SET(obj->clazz, CLASS_ISARRAY)) { - length = arrayObjectLength((ArrayObject *)obj); + length = dvmArrayObjectLength((ArrayObject *)obj); length = (length + 3) & ~3; } else { length = obj->clazz->objectSize; |