/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 | Copying.cpp | 37 * are the block space table and the block queue. 39 * The block space table records the state of a block. We must track 1119 /* Create a table that the new pending refs will 1140 gapRef = ref = finRefs->refs.table; 1145 //TODO: add the current table and allocate 1168 //TODO: if the table is empty when we're done, free it. 1175 * Free the empty temporary table. 1195 ref = newPendingRefs.table; 1406 static void pinHashTableEntries(HashTable *table) 1408 LOG_PIN(">>> pinHashTableEntries(table [all...] |
/dalvik/vm/ |
H A D | ReferenceTable.cpp | 18 * Reference table management. 31 pRef->table = (Object**) malloc(initialCount * sizeof(Object*)); 32 if (pRef->table == NULL) 35 memset(pRef->table, 0xdd, initialCount * sizeof(Object*)); 37 pRef->nextEntry = pRef->table; 49 free(pRef->table); 50 pRef->table = pRef->nextEntry = NULL; 61 assert(pRef->table != NULL); 64 if (pRef->nextEntry == pRef->table + pRef->allocEntries) { 66 if (pRef->nextEntry == pRef->table [all...] |
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.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 | 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...] |
/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/mterp/armv5te/ |
H A D | zcmp.S | 20 ldrmi rIBASE, [rSELF, #offThread_curHandlerTable] @ refresh table base 24 ldrmi rIBASE, [rSELF, #offThread_curHandlerTable] @ refresh table base
|
H A D | OP_IPUT_OBJECT_QUICK.S | 13 ldr r2, [rSELF, #offThread_cardTable] @ r2<- card table base
|
H A D | OP_NEW_ARRAY.S | 52 mov r2, #ALLOC_DONT_TRACK @ don't track in local refs table
|
H A D | OP_IPUT_OBJECT.S | 42 ldr r2, [rSELF, #offThread_cardTable] @ r2<- card table base
|
H A D | OP_SPUT_OBJECT.S | 22 ldr r2, [rSELF, #offThread_cardTable] @ r2<- card table base
|
H A D | OP_EXECUTE_INLINE.S | 43 * - Use a jump table from the main piece to jump directly into the 62 ldr rINST, .L${opcode}_table @ table of InlineOperation
|
H A D | OP_EXECUTE_INLINE_RANGE.S | 54 ldr r9, .L${opcode}_table @ table of InlineOperation
|
/dalvik/libdex/ |
H A D | DexFile.cpp | 174 * Add an entry to the class lookup table. We hash the string and probe 189 * Find the first empty slot. We oversized the table, so this is 193 while (pLookup->table[idx].classDescriptorOffset != 0) { 200 pLookup->table[idx].classDescriptorHash = hash; 201 pLookup->table[idx].classDescriptorOffset = stringOff; 202 pLookup->table[idx].classDefOffset = classDefOff; 207 * Create the class lookup hash table. 230 allocSize = offsetof(DexClassLookup, table) 231 + numEntries * sizeof(pLookup->table[0]); 458 offset = pLookup->table[id [all...] |
/dalvik/vm/mterp/mips/ |
H A D | OP_IPUT_OBJECT_QUICK.S | 15 lw a2, offThread_cardTable(rSELF) # a2 <- card table base
|
H A D | zcmp.S | 24 lw rIBASE, offThread_curHandlerTable(rSELF) # refresh table base
|
H A D | OP_NEW_ARRAY.S | 31 li a2, ALLOC_DONT_TRACK # don't track in local refs table
|
H A D | OP_SPUT_OBJECT.S | 45 lw a2, offThread_cardTable(rSELF) # a2 <- card table base
|
H A D | OP_IPUT_OBJECT.S | 41 lw a2, offThread_cardTable(rSELF) # a2 <- card table base
|
/dalvik/vm/mterp/x86/ |
H A D | OP_INVOKE_OBJECT_INIT_RANGE.S | 44 * Load the primary table base directly. 47 movl offThread_mainHandlerTable(%ecx), %ecx # load main handler table
|
H A D | OP_IPUT_OBJECT.S | 53 movl offThread_cardTable(%eax),%eax # get card table base
|
H A D | OP_SPUT_OBJECT.S | 30 movl offThread_cardTable(%ecx),%ecx # get card table base
|