Lines Matching defs:bb
958 bool mergeBlock(BasicBlock *bb) {
959 if(bb->blockType == kDalvikByteCode &&
960 bb->firstMIRInsn != NULL &&
961 (bb->lastMIRInsn->dalvikInsn.opcode == OP_GOTO_16 ||
962 bb->lastMIRInsn->dalvikInsn.opcode == OP_GOTO ||
963 bb->lastMIRInsn->dalvikInsn.opcode == OP_GOTO_32) &&
964 bb->fallThrough == NULL) {// &&
967 MIR* prevInsn = bb->lastMIRInsn->prev;
968 if(bb->taken == NULL) return false;
969 MIR* mergeInsn = bb->taken->firstMIRInsn;
972 bb->firstMIRInsn = mergeInsn;
977 bb->lastMIRInsn = bb->taken->lastMIRInsn;
978 bb->taken->firstMIRInsn = NULL; //block being merged in
979 bb->fallThrough = bb->taken->fallThrough;
980 bb->taken = bb->taken->taken;
1084 BasicBlock *bb;
1104 bb = (BasicBlock *) blockList->elemList[i];
1105 if(bb->blockType == kExceptionHandling)
1113 bb = (BasicBlock *) blockList->elemList[i];
1114 bool merged = mergeBlock(bb);
1115 while(merged) merged = mergeBlock(bb);
1118 bb = (BasicBlock *) blockList->elemList[i];
1119 if(bb->blockType == kDalvikByteCode &&
1120 bb->firstMIRInsn != NULL) {
1121 preprocessingBB(bb);
1130 bb = (BasicBlock *) dvmGrowableListIteratorNext(&iterator);
1131 if (bb == NULL) break;
1132 if (bb->visited == true) continue;
1134 labelList[i].immOpnd.value = bb->startOffset;
1136 if (bb->blockType >= kChainingCellLast) {
1144 if (bb->blockType == kEntryBlock) {
1146 if (bb->firstMIRInsn == NULL) {
1149 setupLoopEntryBlock(cUnit, bb, bb->fallThrough->id);
1152 } else if (bb->blockType == kExitBlock) {
1156 } else if (bb->blockType == kDalvikByteCode) {
1157 if (bb->hidden == true) continue;
1164 switch (bb->blockType) {
1175 (int) bb->containingMethod;
1239 ALOGV("get ready to handle JIT bb %d type %d hidden %d",
1240 bb->id, bb->blockType, bb->hidden);
1241 for (BasicBlock *nextBB = bb; nextBB != NULL; nextBB = cUnit->nextCodegenBlock) {
1242 bb = nextBB;
1243 bb->visited = true;
1247 bb->blockType != kEntryBlock &&
1248 bb->firstMIRInsn != NULL) {
1249 startOfBasicBlock(bb);
1250 int cg_ret = codeGenBasicBlockJit(cUnit->method, bb);
1251 endOfBasicBlock(bb);
1259 for (mir = bb->firstMIRInsn; mir; mir = mir->next) {
1260 startOfBasicBlock(bb); //why here for O0
1323 if (bb->needFallThroughBranch) {
1324 jumpToBasicBlock(stream, bb->fallThrough->id);