• Home
  • Raw
  • Download

Lines Matching refs:pDexFile

390 void dumpFileHeader(const DexFile* pDexFile)  in dumpFileHeader()  argument
392 const DexOptHeader* pOptHeader = pDexFile->pOptHeader; in dumpFileHeader()
393 const DexHeader* pHeader = pDexFile->pHeader; in dumpFileHeader()
454 void dumpOptDirectory(const DexFile* pDexFile) in dumpOptDirectory() argument
456 const DexOptHeader* pOptHeader = pDexFile->pOptHeader; in dumpOptDirectory()
503 void dumpClassDef(DexFile* pDexFile, int idx) in dumpClassDef() argument
509 pClassDef = dexGetClassDef(pDexFile, idx); in dumpClassDef()
510 pEncodedData = dexGetClassData(pDexFile, pClassDef); in dumpClassDef()
544 void dumpInterface(const DexFile* pDexFile, const DexTypeItem* pTypeItem, in dumpInterface() argument
548 dexStringByTypeIdx(pDexFile, pTypeItem->typeIdx); in dumpInterface()
562 void dumpCatches(DexFile* pDexFile, const DexCode* pCode) in dumpCatches() argument
595 dexStringByTypeIdx(pDexFile, handler->typeIdx); in dumpCatches()
612 void dumpPositions(DexFile* pDexFile, const DexCode* pCode, in dumpPositions() argument
617 = dexGetMethodId(pDexFile, pDexMethod->methodIdx); in dumpPositions()
619 = dexStringByTypeIdx(pDexFile, pMethodId->classIdx); in dumpPositions()
621 dexDecodeDebugInfo(pDexFile, pCode, classDescriptor, pMethodId->protoIdx, in dumpPositions()
637 void dumpLocals(DexFile* pDexFile, const DexCode* pCode, in dumpLocals() argument
643 = dexGetMethodId(pDexFile, pDexMethod->methodIdx); in dumpLocals()
645 = dexStringByTypeIdx(pDexFile, pMethodId->classIdx); in dumpLocals()
647 dexDecodeDebugInfo(pDexFile, pCode, classDescriptor, pMethodId->protoIdx, in dumpLocals()
654 bool getMethodInfo(DexFile* pDexFile, u4 methodIdx, FieldMethodInfo* pMethInfo) in getMethodInfo() argument
658 if (methodIdx >= pDexFile->pHeader->methodIdsSize) in getMethodInfo()
661 pMethodId = dexGetMethodId(pDexFile, methodIdx); in getMethodInfo()
662 pMethInfo->name = dexStringById(pDexFile, pMethodId->nameIdx); in getMethodInfo()
663 pMethInfo->signature = dexCopyDescriptorFromMethodId(pDexFile, pMethodId); in getMethodInfo()
666 dexStringByTypeIdx(pDexFile, pMethodId->classIdx); in getMethodInfo()
673 bool getFieldInfo(DexFile* pDexFile, u4 fieldIdx, FieldMethodInfo* pFieldInfo) in getFieldInfo() argument
677 if (fieldIdx >= pDexFile->pHeader->fieldIdsSize) in getFieldInfo()
680 pFieldId = dexGetFieldId(pDexFile, fieldIdx); in getFieldInfo()
681 pFieldInfo->name = dexStringById(pDexFile, pFieldId->nameIdx); in getFieldInfo()
682 pFieldInfo->signature = dexStringByTypeIdx(pDexFile, pFieldId->typeIdx); in getFieldInfo()
684 dexStringByTypeIdx(pDexFile, pFieldId->classIdx); in getFieldInfo()
692 const char* getClassDescriptor(DexFile* pDexFile, u4 classIdx) in getClassDescriptor() argument
694 return dexStringByTypeIdx(pDexFile, classIdx); in getClassDescriptor()
700 void dumpInstruction(DexFile* pDexFile, const DexCode* pCode, int insnIdx, in dumpInstruction() argument
706 printf("%06x:", ((u1*)insns - pDexFile->baseAddr) + insnIdx*2); in dumpInstruction()
793 dexStringById(pDexFile, pDecInsn->vB), pDecInsn->vB); in dumpInstruction()
799 getClassDescriptor(pDexFile, pDecInsn->vB), pDecInsn->vB); in dumpInstruction()
802 if (getFieldInfo(pDexFile, pDecInsn->vB, &fieldInfo)) { in dumpInstruction()
837 getClassDescriptor(pDexFile, pDecInsn->vC), pDecInsn->vC); in dumpInstruction()
841 if (getFieldInfo(pDexFile, pDecInsn->vC, &fieldInfo)) { in dumpInstruction()
872 dexStringById(pDexFile, pDecInsn->vB), pDecInsn->vB); in dumpInstruction()
893 getClassDescriptor(pDexFile, pDecInsn->vB), pDecInsn->vB); in dumpInstruction()
896 if (getMethodInfo(pDexFile, pDecInsn->vB, &methInfo)) { in dumpInstruction()
934 getClassDescriptor(pDexFile, pDecInsn->vB), pDecInsn->vB); in dumpInstruction()
937 if (getMethodInfo(pDexFile, pDecInsn->vB, &methInfo)) { in dumpInstruction()
1032 void dumpBytecodes(DexFile* pDexFile, const DexMethod* pDexMethod) in dumpBytecodes() argument
1034 const DexCode* pCode = dexGetCode(pDexFile, pDexMethod); in dumpBytecodes()
1044 getMethodInfo(pDexFile, pDexMethod->methodIdx, &methInfo); in dumpBytecodes()
1045 startAddr = ((u1*)pCode - pDexFile->baseAddr); in dumpBytecodes()
1081 dumpInstruction(pDexFile, pCode, insnIdx, insnWidth, &decInsn); in dumpBytecodes()
1093 void dumpCode(DexFile* pDexFile, const DexMethod* pDexMethod) in dumpCode() argument
1095 const DexCode* pCode = dexGetCode(pDexFile, pDexMethod); in dumpCode()
1103 dumpBytecodes(pDexFile, pDexMethod); in dumpCode()
1105 dumpCatches(pDexFile, pCode); in dumpCode()
1107 dumpPositions(pDexFile, pCode, pDexMethod); in dumpCode()
1108 dumpLocals(pDexFile, pCode, pDexMethod); in dumpCode()
1114 void dumpMethod(DexFile* pDexFile, const DexMethod* pDexMethod, int i) in dumpMethod() argument
1128 pMethodId = dexGetMethodId(pDexFile, pDexMethod->methodIdx); in dumpMethod()
1129 name = dexStringById(pDexFile, pMethodId->nameIdx); in dumpMethod()
1130 typeDescriptor = dexCopyDescriptorFromMethodId(pDexFile, pMethodId); in dumpMethod()
1132 backDescriptor = dexStringByTypeIdx(pDexFile, pMethodId->classIdx); in dumpMethod()
1148 dumpCode(pDexFile, pDexMethod); in dumpMethod()
1257 void dumpSField(const DexFile* pDexFile, const DexField* pSField, int i) in dumpSField() argument
1271 pFieldId = dexGetFieldId(pDexFile, pSField->fieldIdx); in dumpSField()
1272 name = dexStringById(pDexFile, pFieldId->nameIdx); in dumpSField()
1273 typeDescriptor = dexStringByTypeIdx(pDexFile, pFieldId->typeIdx); in dumpSField()
1274 backDescriptor = dexStringByTypeIdx(pDexFile, pFieldId->classIdx); in dumpSField()
1314 void dumpIField(const DexFile* pDexFile, const DexField* pIField, int i) in dumpIField() argument
1316 dumpSField(pDexFile, pIField, i); in dumpIField()
1327 void dumpClass(DexFile* pDexFile, int idx, char** pLastPackage) in dumpClass() argument
1339 pClassDef = dexGetClassDef(pDexFile, idx); in dumpClass()
1347 pEncodedData = dexGetClassData(pDexFile, pClassDef); in dumpClass()
1355 classDescriptor = dexStringByTypeIdx(pDexFile, pClassDef->classIdx); in dumpClass()
1408 dexStringByTypeIdx(pDexFile, pClassDef->superclassIdx); in dumpClass()
1444 pInterfaces = dexGetInterfacesList(pDexFile, pClassDef); in dumpClass()
1447 dumpInterface(pDexFile, dexGetTypeItem(pInterfaces, i), i); in dumpClass()
1453 dumpSField(pDexFile, &pClassData->staticFields[i], i); in dumpClass()
1459 dumpIField(pDexFile, &pClassData->instanceFields[i], i); in dumpClass()
1465 dumpMethod(pDexFile, &pClassData->directMethods[i], i); in dumpClass()
1471 dumpMethod(pDexFile, &pClassData->virtualMethods[i], i); in dumpClass()
1477 fileName = dexStringById(pDexFile, pClassDef->sourceFileIdx); in dumpClass()
1550 void dumpMethodMap(DexFile* pDexFile, const DexMethod* pDexMethod, int idx, in dumpMethodMap() argument
1556 int offset = data - (u1*) pDexFile->pOptHeader; in dumpMethodMap()
1558 pMethodId = dexGetMethodId(pDexFile, pDexMethod->methodIdx); in dumpMethodMap()
1559 name = dexStringById(pDexFile, pMethodId->nameIdx); in dumpMethodMap()
1619 void dumpRegisterMaps(DexFile* pDexFile) in dumpRegisterMaps() argument
1621 const u1* pClassPool = pDexFile->pRegisterMapPool; in dumpRegisterMaps()
1625 int baseFileOffset = (u1*) pClassPool - (u1*) pDexFile->pOptHeader; in dumpRegisterMaps()
1644 pClassDef = dexGetClassDef(pDexFile, idx); in dumpRegisterMaps()
1645 classDescriptor = dexStringByTypeIdx(pDexFile, pClassDef->classIdx); in dumpRegisterMaps()
1663 pEncodedData = dexGetClassData(pDexFile, pClassDef); in dumpRegisterMaps()
1685 dumpMethodMap(pDexFile, &pClassData->directMethods[i], i, &data); in dumpRegisterMaps()
1691 dumpMethodMap(pDexFile, &pClassData->virtualMethods[i], i, &data); in dumpRegisterMaps()
1701 void processDexFile(const char* fileName, DexFile* pDexFile) in processDexFile() argument
1708 pDexFile->pHeader->magic +4); in processDexFile()
1712 dumpRegisterMaps(pDexFile); in processDexFile()
1717 dumpFileHeader(pDexFile); in processDexFile()
1718 dumpOptDirectory(pDexFile); in processDexFile()
1724 for (i = 0; i < (int) pDexFile->pHeader->classDefsSize; i++) { in processDexFile()
1726 dumpClassDef(pDexFile, i); in processDexFile()
1728 dumpClass(pDexFile, i, &package); in processDexFile()
1747 DexFile* pDexFile = NULL; in process() local
1763 pDexFile = dexFileParse(map.addr, map.length, flags); in process()
1764 if (pDexFile == NULL) { in process()
1772 processDexFile(fileName, pDexFile); in process()
1780 if (pDexFile != NULL) in process()
1781 dexFileFree(pDexFile); in process()