Home | History | Annotate | Download | only in arm

Lines Matching refs:gDvmJit

899 #define UPDATE_CODE_CACHE_PATCHES()    (gDvmJit.codeCachePatches++)
1330 for (i = 0; i < size - gDvmJit.signatureBreakpointSize + 1; i++) {
1331 if (ptr[i] == gDvmJit.signatureBreakpoint[0]) {
1332 for (j = 1; j < gDvmJit.signatureBreakpointSize; j++) {
1333 if (ptr[i+j] != gDvmJit.signatureBreakpoint[j]) {
1337 if (j == gDvmJit.signatureBreakpointSize) {
1339 i*4, gDvmJit.signatureBreakpointSize);
1431 if (gDvmJit.codeCacheByteUsed + cUnit->totalSize > gDvmJit.codeCacheSize) {
1432 gDvmJit.codeCacheFull = true;
1450 (intptr_t) gDvmJit.codeCache + gDvmJit.codeCacheByteUsed);
1475 if (info->discardResult == false && gDvmJit.signatureBreakpoint != NULL &&
1476 chainCellOffset/4 >= gDvmJit.signatureBreakpointSize) {
1491 dvmLockMutex(&gDvmJit.compilerLock);
1492 if (info->cacheVersion != gDvmJit.cacheVersion) {
1496 dvmUnlockMutex(&gDvmJit.compilerLock);
1500 cUnit->baseAddr = (char *) gDvmJit.codeCache + gDvmJit.codeCacheByteUsed;
1501 gDvmJit.codeCacheByteUsed += offset;
1507 gDvmJit.numCompilations++;
1538 dvmUnlockMutex(&gDvmJit.compilerLock);
1600 if ((gDvmJit.pProfTable != NULL) && (gDvm.sumThreadSuspendCount == 0) &&
1601 (gDvmJit.codeCacheFull == false)) {
1604 gDvmJit.translationChains++;
1637 gDvmJit.hasNewChain = true;
1656 dvmLockMutex(&gDvmJit.compilerICPatchLock);
1678 gDvmJit.icPatchInit++;
1691 gDvmJit.icPatchRejected++;
1707 gDvmJit.icPatchLockFree++;
1713 } else if (gDvmJit.compilerICPatchIndex < COMPILER_IC_PATCH_QUEUE_SIZE) {
1714 int index = gDvmJit.compilerICPatchIndex++;
1717 gDvmJit.compilerICPatchQueue[index].cellAddr = cellAddr;
1718 gDvmJit.compilerICPatchQueue[index].cellContent = *newContent;
1719 gDvmJit.compilerICPatchQueue[index].classDescriptor = clazz->descriptor;
1720 gDvmJit.compilerICPatchQueue[index].classLoader = clazz->classLoader;
1722 gDvmJit.compilerICPatchQueue[index].serialNumber = clazz->serialNumber;
1724 gDvmJit.icPatchQueued++;
1729 gDvmJit.icPatchDropped++;
1733 dvmUnlockMutex(&gDvmJit.compilerICPatchLock);
1827 if (gDvmJit.compilerICPatchIndex == 0) return;
1834 dvmLockMutex(&gDvmJit.compilerICPatchLock);
1836 UNPROTECT_CODE_CACHE(gDvmJit.codeCache, gDvmJit.codeCacheByteUsed);
1838 //LOGD("Number of IC patch work orders: %d", gDvmJit.compilerICPatchIndex);
1842 ((char *) gDvmJit.codeCache + gDvmJit.codeCacheSize);
1843 maxAddr = (PredictedChainingCell *) gDvmJit.codeCache;
1845 for (i = 0; i < gDvmJit.compilerICPatchIndex; i++) {
1846 ICPatchWorkOrder *workOrder = &gDvmJit.compilerICPatchQueue[i];
1875 PROTECT_CODE_CACHE(gDvmJit.codeCache, gDvmJit.codeCacheByteUsed);
1877 gDvmJit.compilerICPatchIndex = 0;
1878 dvmUnlockMutex(&gDvmJit.compilerICPatchLock);
1959 if (gDvmJit.pJitEntryTable != NULL) {
1961 dvmLockMutex(&gDvmJit.tableLock);
1963 UNPROTECT_CODE_CACHE(gDvmJit.codeCache, gDvmJit.codeCacheByteUsed);
1965 for (i = 0; i < gDvmJit.jitTableSize; i++) {
1966 if (gDvmJit.pJitEntryTable[i].dPC &&
1967 !gDvmJit.pJitEntryTable[i].u.info.isMethodEntry &&
1968 gDvmJit.pJitEntryTable[i].codeAddress &&
1969 (gDvmJit.pJitEntryTable[i].codeAddress !=
1972 lastAddress = unchainSingle(&gDvmJit.pJitEntryTable[i]);
1974 (u4*)gDvmJit.pJitEntryTable[i].codeAddress <
1984 PROTECT_CODE_CACHE(gDvmJit.codeCache, gDvmJit.codeCacheByteUsed);
1986 dvmUnlockMutex(&gDvmJit.tableLock);
1987 gDvmJit.translationChains = 0;
1989 gDvmJit.hasNewChain = false;
2123 dvmLockMutex(&gDvmJit.tableLock);
2126 sortedEntries = (JitEntry *)malloc(sizeof(JitEntry) * gDvmJit.jitTableSize);
2129 memcpy(sortedEntries, gDvmJit.pJitEntryTable,
2130 sizeof(JitEntry) * gDvmJit.jitTableSize);
2131 qsort(sortedEntries, gDvmJit.jitTableSize, sizeof(JitEntry),
2135 for (i=0; i < gDvmJit.jitTableSize; i++) {
2153 for (i=0; i < gDvmJit.jitTableSize; i++) {
2162 for (i=0; i < gDvmJit.jitTableSize && i < 10; i++) {
2177 dvmUnlockMutex(&gDvmJit.tableLock);
2236 UNPROTECT_CODE_CACHE(gDvmJit.codeCache, gDvmJit.codeCacheByteUsed);
2239 if (gDvmJit.inflightBaseAddr)
2240 findClassPointersSingleTrace((char *) gDvmJit.inflightBaseAddr,
2243 if (gDvmJit.pJitEntryTable != NULL) {
2245 dvmLockMutex(&gDvmJit.tableLock);
2246 for (traceIdx = 0; traceIdx < gDvmJit.jitTableSize; traceIdx++) {
2247 const JitEntry *entry = &gDvmJit.pJitEntryTable[traceIdx];
2256 dvmUnlockMutex(&gDvmJit.tableLock);
2260 PROTECT_CODE_CACHE(gDvmJit.codeCache, gDvmJit.codeCacheByteUsed);
2285 dvmChangeStatus(gDvmJit.compilerThread, THREAD_RUNNING);
2315 gDvmJit.inflightBaseAddr = base;
2319 gDvmJit.compilerThreadBlockGCTime += blockTime;
2320 if (blockTime > gDvmJit.maxCompilerThreadBlockGCTime)
2321 gDvmJit.maxCompilerThreadBlockGCTime = blockTime;
2322 gDvmJit.numCompilerThreadBlockGC++;
2329 dvmChangeStatus(gDvmJit.compilerThread, THREAD_VMWAIT);