/dalvik/vm/compiler/ |
H A D | Ralloc.cpp | 27 static void inferTypes(CompilationUnit *cUnit, BasicBlock *bb) argument 30 if (bb->blockType != kDalvikByteCode && bb->blockType != kEntryBlock) 33 for (mir = bb->firstMIRInsn; mir; mir = mir->next) { 75 BasicBlock *bb = (BasicBlock *) dvmGrowableListIteratorNext(&iterator); local 76 if (bb == NULL) break; 77 inferTypes(cUnit, bb);
|
H A D | IntermediateRep.cpp | 23 BasicBlock *bb = (BasicBlock *)dvmCompilerNew(sizeof(BasicBlock), true); local 24 bb->blockType = blockType; 25 bb->id = blockId; 26 bb->predecessors = dvmCompilerAllocBitVector(blockId > 32 ? blockId : 32, 28 return bb; 32 void dvmCompilerAppendMIR(BasicBlock *bb, MIR *mir) argument 34 if (bb->firstMIRInsn == NULL) { 35 assert(bb->lastMIRInsn == NULL); 36 bb->lastMIRInsn = bb 47 dvmCompilerPrependMIR(BasicBlock *bb, MIR *mir) argument 62 dvmCompilerInsertMIRAfter(BasicBlock *bb, MIR *currentMIR, MIR *newMIR) argument [all...] |
H A D | InlineTransformation.cpp | 312 BasicBlock *bb = (BasicBlock *) dvmGrowableListIteratorNext(&iterator); local 313 if (bb == NULL) break; 314 if (bb->blockType != kDalvikByteCode) 316 MIR *lastMIRInsn = bb->lastMIRInsn; 358 lastMIRInsn, bb, isRange); 403 lastMIRInsn, bb, isRange);
|
H A D | Loop.cpp | 96 const BasicBlock *bb) 98 int numPred = dvmCountSetBits(bb->predecessors); 100 dvmBitVectorIteratorInit(bb->predecessors, &bvIterator); 108 dvmIsBitSet(bb->predecessors, cUnit->entryBlock->id)) { 514 void resetBlockEdges(BasicBlock *bb) argument 516 bb->taken = NULL; 517 bb->fallThrough = NULL; 518 bb->successorBlockList.blockListType = kNotUsed; 522 struct BasicBlock *bb) 524 dvmClearAllBits(bb 95 findPredecessorBlock(const CompilationUnit *cUnit, const BasicBlock *bb) argument 521 clearPredecessorVector(struct CompilationUnit *cUnit, struct BasicBlock *bb) argument 617 BasicBlock *bb = (BasicBlock *) dvmGrowableListIteratorNext(&iterator); local 632 BasicBlock *bb = (BasicBlock *) dvmGrowableListIteratorNext(&iterator); local [all...] |
H A D | Utility.cpp | 159 BasicBlock *bb; local 184 bb = (BasicBlock *) dvmGrowableListIteratorNext(&iterator); 185 if (bb == NULL) break; 187 bb->id, 188 blockTypeNames[bb->blockType], 189 bb->startOffset, 190 bb->lastMIRInsn ? bb->lastMIRInsn->offset : bb->startOffset, 191 bb 378 BasicBlock *bb = local 387 dvmGetBlockName(BasicBlock *bb, char *name) argument [all...] |
H A D | Dataflow.cpp | 1108 bool dvmCompilerFindLocalLiveIn(CompilationUnit *cUnit, BasicBlock *bb) argument 1113 if (bb->dataFlowInfo == NULL) return false; 1115 useV = bb->dataFlowInfo->useV = 1117 defV = bb->dataFlowInfo->defV = 1119 liveInV = bb->dataFlowInfo->liveInV = 1122 for (mir = bb->firstMIRInsn; mir; mir = mir->next) { 1215 bool dvmCompilerDoSSAConversion(CompilationUnit *cUnit, BasicBlock *bb) argument 1219 if (bb->dataFlowInfo == NULL) return false; 1221 for (mir = bb->firstMIRInsn; mir; mir = mir->next) { 1330 bb 1346 dvmCompilerDoConstantPropagation(CompilationUnit *cUnit, BasicBlock *bb) argument 1419 dvmCompilerFindInductionVariables(struct CompilationUnit *cUnit, struct BasicBlock *bb) argument 1627 BasicBlock *bb = (BasicBlock *) dvmGrowableListIteratorNext(&iterator); local 1641 dvmCompilerClearVisitedFlag(struct CompilationUnit *cUnit, struct BasicBlock *bb) argument 1663 BasicBlock *bb = local 1681 BasicBlock *bb = local 1698 BasicBlock *bb = local 1714 BasicBlock *bb = local 1730 BasicBlock *bb = local [all...] |
H A D | SSATransformation.cpp | 70 * register idx is defined in BasicBlock bb. 72 static bool fillDefBlockMatrix(CompilationUnit *cUnit, BasicBlock *bb) argument 74 if (bb->dataFlowInfo == NULL) return false; 78 dvmBitVectorIteratorInit(bb->dataFlowInfo->defV, &iterator); 82 /* Block bb defines register idx */ 83 dvmCompilerSetBit(cUnit->defBlockMatrix[idx], bb->id); 122 static void computeDomPostOrderTraversal(CompilationUnit *cUnit, BasicBlock *bb) argument 125 dvmBitVectorIteratorInit(bb->iDominated, &bvIterator); 138 dvmInsertGrowableList(&cUnit->domPostOrderTraversal, bb->id); 141 if (bb 161 computeDominanceFrontier(CompilationUnit *cUnit, BasicBlock *bb) argument 208 initializeDominationInfo(CompilationUnit *cUnit, BasicBlock *bb) argument 231 computeBlockDominators(CompilationUnit *cUnit, BasicBlock *bb) argument 265 computeImmediateDominator(CompilationUnit *cUnit, BasicBlock *bb) argument 384 computeBlockLiveIns(CompilationUnit *cUnit, BasicBlock *bb) argument 501 insertPhiNodeOperands(CompilationUnit *cUnit, BasicBlock *bb) argument [all...] |
H A D | Frontend.cpp | 567 BasicBlock *bb = successorBlockInfo->block; local 568 dvmCompilerClearBit(bb->predecessors, origBlock->id); 569 dvmCompilerSetBit(bb->predecessors, bottomBlock->id); 602 BasicBlock *bb; local 606 bb = (BasicBlock *) blockList->elemList[i]; 607 if (bb->blockType != kDalvikByteCode) continue; 608 if (bb->startOffset == codeOffset) return bb; 610 if ((split == true) && (codeOffset > bb->startOffset) && 611 (bb 679 BasicBlock *bb = (BasicBlock *) dvmGrowableListGetElement(blockList, local 797 verifyPredInfo(CompilationUnit *cUnit, BasicBlock *bb) argument 1460 BasicBlock *bb; local [all...] |
/dalvik/dx/src/com/android/dx/cf/code/ |
H A D | ByteBlockList.java | 70 * @param bb {@code null-ok;} the value to store 72 public void set(int n, ByteBlock bb) { argument 73 super.set(n, bb);
|
H A D | Simulator.java | 85 * @param bb {@code non-null;} the basic block 88 public void simulate(ByteBlock bb, Frame frame) { argument 89 int end = bb.getEnd(); 94 for (int off = bb.getStart(); off < end; /*off*/) {
|
H A D | Ropper.java | 378 for (BasicBlock bb : result) { 379 int label = bb.getLabel(); 907 BasicBlock bb = new BasicBlock(label, il, extraBlockSuccessors, 910 addBlock(bb, frame.getSubroutines()); 948 BasicBlock bb = 950 addOrReplaceBlock(bb, frame.getSubroutines()); 1036 BasicBlock bb = 1039 addBlock(bb, IntList.EMPTY); 1063 bb = new BasicBlock(label, insns, 1065 addBlock(bb, IntLis 1228 isSubroutineCaller(BasicBlock bb) argument [all...] |
/dalvik/vm/compiler/codegen/arm/ |
H A D | ArchFactory.cpp | 36 BasicBlock *bb = cUnit->curBlock; local 37 if (bb->taken) { 39 exceptionLabel += bb->taken->id;
|
H A D | CodegenDriver.cpp | 1112 BasicBlock *bb, ArmLIR *labelList, 1122 ArmLIR *retChainingCell = &labelList[bb->fallThrough->id]; 1158 genUnconditionalBranch(cUnit, &labelList[bb->taken->id]); 1459 BasicBlock *bb, ArmLIR *labelList) 1462 bool backwardBranch = (bb->taken->startOffset <= mir->offset); 1469 int numPredecessors = dvmCountSetBits(bb->taken->predecessors); 1474 if (numPredecessors == 1 && bb->taken->visited == false && 1475 bb->taken->blockType == kDalvikByteCode) { 1476 cUnit->nextCodegenBlock = bb->taken; 1479 genUnconditionalBranch(cUnit, &labelList[bb 1111 genInvokeSingletonCommon(CompilationUnit *cUnit, MIR *mir, BasicBlock *bb, ArmLIR *labelList, ArmLIR *pcrLabel, const Method *calleeMethod) argument 1458 handleFmt10t_Fmt20t_Fmt30t(CompilationUnit *cUnit, MIR *mir, BasicBlock *bb, ArmLIR *labelList) argument 2100 handleFmt21t(CompilationUnit *cUnit, MIR *mir, BasicBlock *bb, ArmLIR *labelList) argument 2601 handleFmt22t(CompilationUnit *cUnit, MIR *mir, BasicBlock *bb, ArmLIR *labelList) argument 2963 genLandingPadForMispredictedCallee(CompilationUnit *cUnit, MIR *mir, BasicBlock *bb, ArmLIR *labelList) argument 2989 handleFmt35c_3rc(CompilationUnit *cUnit, MIR *mir, BasicBlock *bb, ArmLIR *labelList) argument 3351 handleFmt35ms_3rms(CompilationUnit *cUnit, MIR *mir, BasicBlock *bb, ArmLIR *labelList) argument 4213 BasicBlock *bb = (BasicBlock *) dvmGrowableListIteratorNext(&iterator); local [all...] |
/dalvik/dexgen/src/com/android/dexgen/rop/code/ |
H A D | BasicBlockList.java | 74 * @param bb {@code null-ok;} the element to set at {@code n} 76 public void set(int n, BasicBlock bb) { argument 77 super.set(n, bb);
|
/dalvik/dx/src/com/android/dx/rop/code/ |
H A D | BasicBlockList.java | 74 * @param bb {@code null-ok;} the element to set at {@code n} 76 public void set(int n, BasicBlock bb) { argument 77 super.set(n, bb);
|
/dalvik/vm/compiler/codegen/x86/ |
H A D | BytecodeVisitor.cpp | 515 void updateConstInfo(BasicBlock_O1* bb) { argument 516 if(bb == NULL) return; 530 bool getConstInfo(BasicBlock_O1* bb) { argument
|
H A D | Lower.cpp | 422 void startOfBasicBlock(BasicBlock* bb) { argument 423 traceCurrentBB = bb;
|
H A D | CodegenInterface.cpp | 943 bool mergeBlock(BasicBlock *bb) { argument 944 if(bb->blockType == kDalvikByteCode && 945 bb->firstMIRInsn != NULL && 946 (bb->lastMIRInsn->dalvikInsn.opcode == OP_GOTO_16 || 947 bb->lastMIRInsn->dalvikInsn.opcode == OP_GOTO || 948 bb->lastMIRInsn->dalvikInsn.opcode == OP_GOTO_32) && 949 bb->fallThrough == NULL) {// && 952 MIR* prevInsn = bb->lastMIRInsn->prev; 953 if(bb->taken == NULL) return false; 954 MIR* mergeInsn = bb 1069 BasicBlock *bb; local [all...] |
H A D | AnalysisO1.cpp | 241 int collectInfoOfBasicBlock(Method* method, BasicBlock_O1* bb); 242 void dumpVirtualInfoOfBasicBlock(BasicBlock_O1* bb); 246 int codeGenBasicBlock(const Method* method, BasicBlock_O1* bb); 249 int mergeEntry2(BasicBlock_O1* bb); 254 void insertFromVirtualInfo(BasicBlock_O1* bb, int k); //update compileTable 259 bool isFirstOfHandler(BasicBlock_O1* bb); 279 int fakeUsageAtEndOfBB(BasicBlock_O1* bb); 404 void initializeRegStateOfBB(BasicBlock_O1* bb) { argument 410 if(bb->bb_index > 0) { //non-entry block 411 if(isFirstOfHandler(bb)) { 515 createBasicBlockO1(BasicBlock* bb) argument 523 preprocessingBB(BasicBlock* bb) argument 622 codeGenBasicBlockJit(const Method* method, BasicBlock* bb) argument 638 endOfBasicBlock(BasicBlock* bb) argument 652 collectInfoOfBasicBlock(Method* method, BasicBlock_O1* bb) argument 740 codeGenBasicBlock(const Method* method, BasicBlock_O1* bb) argument 959 mergeEntry2(BasicBlock_O1* bb) argument 1439 fakeUsageAtEndOfBB(BasicBlock_O1* bb) argument [all...] |
H A D | AnalysisO1.h | 250 struct BasicBlock_O1* bb; //bb VR belongs to member in struct:compileTableEntry 365 bool getConstInfo(BasicBlock_O1* bb); 377 int collectInfoOfBasicBlock(Method* method, BasicBlock_O1* bb); //update bb->infoBasicBlock
|
/dalvik/vm/compiler/codegen/mips/Mips32/ |
H A D | Factory.cpp | 948 BasicBlock *bb = cUnit->curBlock; local 949 if (bb->taken) { 951 exceptionLabel += bb->taken->id;
|
/dalvik/vm/compiler/codegen/mips/ |
H A D | CodegenDriver.cpp | 1154 BasicBlock *bb, MipsLIR *labelList, 1164 MipsLIR *retChainingCell = &labelList[bb->fallThrough->id]; 1196 genUnconditionalBranch(cUnit, &labelList[bb->taken->id]); 1519 BasicBlock *bb, MipsLIR *labelList) 1522 bool backwardBranch = (bb->taken->startOffset <= mir->offset); 1529 int numPredecessors = dvmCountSetBits(bb->taken->predecessors); 1534 if (numPredecessors == 1 && bb->taken->visited == false && 1535 bb->taken->blockType == kDalvikByteCode) { 1536 cUnit->nextCodegenBlock = bb->taken; 1539 genUnconditionalBranch(cUnit, &labelList[bb 1153 genInvokeSingletonCommon(CompilationUnit *cUnit, MIR *mir, BasicBlock *bb, MipsLIR *labelList, MipsLIR *pcrLabel, const Method *calleeMethod) argument 1518 handleFmt10t_Fmt20t_Fmt30t(CompilationUnit *cUnit, MIR *mir, BasicBlock *bb, MipsLIR *labelList) argument 2146 handleFmt21t(CompilationUnit *cUnit, MIR *mir, BasicBlock *bb, MipsLIR *labelList) argument 2653 handleFmt22t(CompilationUnit *cUnit, MIR *mir, BasicBlock *bb, MipsLIR *labelList) argument 3049 genLandingPadForMispredictedCallee(CompilationUnit *cUnit, MIR *mir, BasicBlock *bb, MipsLIR *labelList) argument 3075 handleFmt35c_3rc(CompilationUnit *cUnit, MIR *mir, BasicBlock *bb, MipsLIR *labelList) argument 3477 handleFmt35ms_3rms(CompilationUnit *cUnit, MIR *mir, BasicBlock *bb, MipsLIR *labelList) argument 4328 BasicBlock *bb = (BasicBlock *) dvmGrowableListIteratorNext(&iterator); local [all...] |