/dalvik/vm/ |
H A D | ReferenceTable.h | 18 * Maintain a table of references. Used for internal local references, 21 * None of the table functions are synchronized. 32 * If "allocEntries" is not equal to "maxEntries", the table may expand when 34 * pointers into "table" rather than offsets, use a fixed-size table. 37 * table/nextEntry is allowed.) 41 Object** table; /* bottom of the list */ member in struct:ReferenceTable 50 * If "initialCount" != "maxCount", the table will expand as required. 52 * Returns "false" if table allocation fails. 61 * You must call dvmInitReferenceTable() before you can re-use this table [all...] |
H A D | Intern.cpp | 54 static StringObject* lookupString(HashTable* table, u4 key, StringObject* value) argument 56 void* entry = dvmHashTableLookup(table, key, (void*)value, 61 static StringObject* insertString(HashTable* table, u4 key, StringObject* value) argument 66 void* entry = dvmHashTableLookup(table, key, (void*)value, 80 * Check the literal table for a match. 85 * A match was found in the literal table, the easy case. 90 * There is no match in the literal table, check the 91 * interned string table. 96 * A match was found in the interned table. Move the 97 * matching string to the literal table [all...] |
H A D | IndirectRefTable.cpp | 18 * Indirect reference table management. 74 * We know there's enough room in the table. Now we just need to find 96 ALOGE("JNI ERROR (app bug): %s reference table overflow (max=%d)", 110 ALOGE("JNI ERROR (app bug): unable to expand %s reference table " 136 * Get the referent of an indirect ref from the table. 153 // References of the requested kind cannot appear within this table. 161 ALOGE("JNI ERROR (app bug): accessed stale %s reference %p (index %d in a table of size %d)", 187 const IndirectRefSlot* table) { 189 if (table[i].obj == obj) { 201 * Remove "obj" from "pRef". We extract the table offse 186 findObject(const Object* obj, int bottomIndex, int topIndex, const IndirectRefSlot* table) argument [all...] |
H A D | IndirectRefTable.h | 21 * Maintain a table of indirect references. Used for local/global JNI 24 * The table contains object references that are part of the GC root set. 31 * operations that allow us to operate on segments of the table, where 35 * a method returns. Additions to the table must be made in the current 41 * The GC must be able to scan the entire table quickly. 50 * - scanning the entire table straight through 52 * If there's more than one segment, we don't guarantee that the table 58 * the table is capped at 64K. 60 * None of the table functions are synchronized. 67 * We need a 16-bit table inde 204 iref_iterator(IndirectRefSlot* table, size_t i, size_t capacity) argument [all...] |
H A D | Jni.cpp | 111 removals require grabbing a mutex. If the table serves as an indirection 133 The GC will scan all references in the table. 214 // that we use the correct per-thread indirect reference table. 365 ALOGE("Failed adding to JNI local ref table (has %zd entries)", pRefTable->capacity()); 400 * refs table of the current thread. 481 * we're either leaking global ref table entries or we're going to 487 ALOGE("Failed adding to JNI global ref table (%zd entries)", 526 IndirectRefTable *table = &gDvm.jniWeakGlobalRefTable; local 527 jobject jobj = (jobject) table->add(IRT_FIRST_SEGMENT, obj); 530 ALOGE("Failed adding to JNI weak global ref table ( 542 IndirectRefTable *table = &gDvm.jniWeakGlobalRefTable; local [all...] |
/dalvik/dexgen/src/com/android/dexgen/dex/file/ |
H A D | CatchStructs.java | 49 * {@code null-ok;} the underlying table; set in 52 private CatchTable table; field in class:CatchStructs 79 this.table = null; 89 if (table == null) { 90 table = code.getCatches(); 101 return table.size(); 123 int size = table.size(); 132 handlerOffsets.put(table.get(i).getHandlers(), null); 202 int tableSize = table.size(); 204 CatchTable.Entry one = table [all...] |
/dalvik/dx/src/com/android/dx/dex/file/ |
H A D | CatchStructs.java | 47 * {@code null-ok;} the underlying table; set in 50 private CatchTable table; field in class:CatchStructs 77 this.table = null; 87 if (table == null) { 88 table = code.getCatches(); 99 return table.size(); 121 int size = table.size(); 130 handlerOffsets.put(table.get(i).getHandlers(), null); 200 int tableSize = table.size(); 202 CatchTable.Entry one = table [all...] |
/dalvik/vm/alloc/ |
H A D | Visit.cpp | 34 * Applies a verification function to all present values in the hash table. 36 static void visitHashTable(RootVisitor *visitor, HashTable *table, argument 40 assert(table != NULL); 41 dvmHashTableLock(table); 42 for (int i = 0; i < table->tableSize; ++i) { 43 HashEntry *entry = &table->pEntries[i]; 48 dvmHashTableUnlock(table); 52 * Visits all entries in the reference table. 54 static void visitReferenceTable(RootVisitor *visitor, ReferenceTable *table, argument 58 assert(table ! 68 visitIndirectRefTable(RootVisitor *visitor, IndirectRefTable *table, u4 threadId, RootType type, void *arg) argument [all...] |
H A D | MarkSweep.cpp | 171 * - Interned string table 887 IndirectRefTable* table = &gDvm.jniWeakGlobalRefTable; local 890 for (It it = table->begin(), end = table->end(); it != end; ++it) {
|
/dalvik/vm/analysis/ |
H A D | Optimize.cpp | 55 * Create a table of inline substitutions. Sets gDvm.inlineSubs. 58 * into a hash table as the list size increases. 64 InlineSub* table; local 72 table = (InlineSub*) calloc(count + 1, sizeof(InlineSub)); 89 table[tableIndex].method = method; 90 table[tableIndex].inlineIdx = i; 94 /* mark end of table */ 95 table[tableIndex].method = NULL; 97 gDvm.inlineSubs = table; 444 * Check the table firs [all...] |
/dalvik/libdex/ |
H A D | DexFile.h | 333 * The "catches" table is used when throwing an exception, 361 * Link table. Currently undefined. 448 * Lookup table for classes. It provides a mapping from class name to 452 * don't need the same hash table in every VM. This is slightly slower than 453 * a hash table with direct pointers to the items, but because it's shared 454 * there's less of a penalty for using a fairly sparse table. 458 int numEntries; // size of table[]; always power of 2 463 } table[1]; member in struct:DexClassLookup 479 u4 depsOffset; /* offset of optimized DEX dependency table */ 587 * Create class lookup table [all...] |