History log of /dalvik/vm/ReferenceTable.cpp
Revision Date Author Comments
c1a4ab9c313d8a3d12007f2dbef7b5a6fa4ac2ef 06-Jan-2012 Steve Block <steveblock@google.com> Rename (IF_)LOGE(_IF) to (IF_)ALOGE(_IF) DO NOT MERGE

See https://android-git.corp.google.com/g/#/c/157220

Also fix an occurrence of LOGW missed in an earlier change.

Bug: 5449033
Change-Id: I2e3b23839e6dcd09015d6402280e9300c75e3406
e8e1ddccd616e8226b7cc1e4e9fdb327429249e8 06-Jan-2012 Steve Block <steveblock@google.com> Rename (IF_)LOGW(_IF) to (IF_)ALOGW(_IF) DO NOT MERGE

See https://android-git.corp.google.com/g/157065

Bug: 5449033
Change-Id: Ia5d301248024df26c2a29dabdfe738e39ec87c82
92c1f6f1b4249e4e379452ee7b49f027052bf4ce 20-Oct-2011 Steve Block <steveblock@google.com> Rename (IF_)LOGV(_IF) to (IF_)ALOGV(_IF) DO NOT MERGE

See https://android-git.corp.google.com/g/#/c/143865

Bug: 5449033
Change-Id: I8bd96961e369a08e86ff78b82d90f20f42787eb1
8bc8bf71a52e17d483021b4c9dc8e735d9bce3ed 20-Jul-2011 Elliott Hughes <enh@google.com> Don't use dvmIsValidObject outside the GC.

Use dvmIsHeapPointer outside the GC. (This still isn't safe because there's
no synchronization when dealing with the HeapSource.)

Bug: 5049447
Change-Id: Ie0b325ef0a92687ea1eaf1491a4bb832298893c5
259a8a5154c63a793ea0ee438d146acda7d990b6 12-Jul-2011 Elliott Hughes <enh@google.com> Fix the jweak implementation.

We need to distinguish between "cleared weak global" and "deleted weak global".
Previously we used NULL for both. Now we add a magic value for cleared weak
globals. I've also switched the GC over to using iterators, so IndirectRefTable
itself becomes responsible for not showing bad pointers to the GC.

I've also improved the reference table dumping to cope with the new scheme and
to be a bit easier to read (through extra indentation).

Bug: 4260055
Change-Id: I26af301fb2b46d014c6f6b0915a8f8a7fb6d7c5b
7c08071765cb134e4c0b18bf8fd6a7060e145212 20-Jun-2011 Elliott Hughes <enh@google.com> Don't be too specific in reference table summaries.

Implying that the examplar Class' specific type was true of all
the classes was misleading; we should just say "Class" in the
summary:

W/dalvikvm( 801): JNI local reference table summary (23 entries):
W/dalvikvm( 801): 20 of java.lang.Class (19 unique instances)
W/dalvikvm( 801): 2 of java.lang.String (2 unique instances)
W/dalvikvm( 801): 1 of java.lang.String[] (2 elements)

Change-Id: Ia961cfc689aa390c84ecbc96e44bdd64448ac051
8b987b351a5e2addd1adee2707ab97eb3918e26d 18-Jun-2011 Elliott Hughes <enh@google.com> Fix build: rebase went wrong.

Change-Id: I390edcb3ddd52d2fb9285d2de42617dff68fdcf2
d8a3f9fa1951e552f5f65c2914689083cc0c46c2 18-Jun-2011 Elliott Hughes <enh@google.com> Make some of the StringObject functions member functions.

Change-Id: I72ed13c16f0cb24498772c453ba268a0f65f208a
837eabb829417c1542037423c55536649de404b8 17-Jun-2011 Elliott Hughes <enh@google.com> Add and use StringAppendF.

I've also removed the dvm prefix from the existing StringPrintf.

Change-Id: I3d01f676c876957b6c6e032c674e1a06c3670021
fe7f2b3920bf5d66eda262e643245b03df3e57c8 17-Jun-2011 Elliott Hughes <enh@google.com> Improve reference table dumping.

1. Show the newest entry first; I always assume the top is the newest.
2. Use human-readable type names.
3. Improve the human-readable type name code to show _which_ Class (i.e.
java.lang.Class<java.lang.String> rather than just java.lang.Class).
4. Make it clear when we're reporting the number of elements in an array.
5. Show the first few characters of a string.
6. Show the length of a string if we truncate it.

(I've also removed some redundant casts and improved const-correctness.)

Example:

Last 10 entries in JNI local reference table:
16: 0x40f8ec70 java.lang.String "android.permissi... (41 chars)
15: 0x40f8d450 android.os.Parcel
14: 0x40f8eb90 java.lang.String "BlackSurface"
13: 0x408caca0 android.view.SurfaceSession
12: 0x40f8eb60 android.view.Surface
11: 0x406bc6f0 java.lang.Class<com.android.server.SystemServer>
10: 0x406c0278 java.lang.String "com/android/serv... (31 chars)
9: 0x4015d488 dalvik.system.PathClassLoader
8: 0x40148de8 java.lang.Class<java.lang.ClassLoader>
7: 0x406bc560 java.lang.String[]
JNI local reference table summary (17 entries):
6 of java.lang.Class<com.android.server.SystemServer> (5 unique instances)
5 of java.lang.String (5 unique instances)
1 of java.lang.String[]
1 of java.lang.String[] (2 elements)
1 of dalvik.system.PathClassLoader
1 of android.os.Parcel
1 of android.view.SurfaceSession
1 of android.view.Surface

Change-Id: I56494104cd0daada3ecc1e610f1c94df1e11c640
60fc806b679a3655c228b4093058c59941a49cfe 26-May-2011 Dan Bornstein <danfuzz@android.com> Further conservation of newlines.

Friends don't let friends end LOG() strings with newlines.

Change-Id: I5a18c766c90c4ab5f03caa6acd601d34d91beb00
a62c3a0ab3fcdde37f47d16e9699a935ae7a8e88 04-May-2011 Carl Shapiro <cshapiro@google.com> Establish a subclass relationship between ArrayObject and Object.

Change-Id: I9f9fe52bd4ceebb6dde48251a89190ba6bb00ce4
d5c36b9040bd26a81219a7f399513526f9b46324 16-Apr-2011 Carl Shapiro <cshapiro@google.com> Move the remaining non-compiler VM code into C++.

Change-Id: Id8693208d2741c55a7b0474d1264f2112019d11f