/external/llvm/test/CodeGen/X86/ |
D | switch-edge-weight.ll | 34 ; CHECK: BB#0: 35 ; BB#0 to BB#4: [0, 1133] (65 = 60 + 5) 36 ; BB#0 to BB#5: [1134, UINT32_MAX] (25 = 20 + 5) 37 ; CHECK: Successors according to CFG: BB#4({{[0-9a-fx/= ]+}}72.22%) BB#5({{[0-9a-fx/= ]+}}27.78%) 39 ; CHECK: BB#4: 40 ; BB#4 to BB#1: [155, 159] (50) 41 ; BB#4 to BB#5: [0, 1133] - [155, 159] (15 = 10 + 5) 42 ; CHECK: Successors according to CFG: BB#1({{[0-9a-fx/= ]+}}76.92%) BB#7({{[0-9a-fx/= ]+}}23.08%) 44 ; CHECK: BB#5: 45 ; BB#5 to BB#1: {1140} (10) [all …]
|
D | vector-shuffle-128-v2.ll | 15 ; SSE: # BB#0: 20 ; AVX1: # BB#0: 25 ; AVX2: # BB#0: 30 ; AVX512VL: # BB#0: 38 ; SSE: # BB#0: 43 ; AVX: # BB#0: 51 ; SSE: # BB#0: 56 ; AVX: # BB#0: 64 ; SSE: # BB#0: 69 ; AVX1: # BB#0: [all …]
|
D | fma_patterns.ll | 13 ; FMA: # BB#0: 18 ; FMA4: # BB#0: 23 ; AVX512: # BB#0: 34 ; FMA: # BB#0: 39 ; FMA4: # BB#0: 44 ; AVX512: # BB#0: 54 ; FMA: # BB#0: 59 ; FMA4: # BB#0: 64 ; AVX512: # BB#0: 74 ; FMA: # BB#0: [all …]
|
D | vector-shuffle-128-v4.ll | 14 ; SSE: # BB#0: 19 ; AVX: # BB#0: 27 ; SSE: # BB#0: 32 ; AVX: # BB#0: 40 ; SSE: # BB#0: 45 ; AVX: # BB#0: 53 ; SSE: # BB#0: 58 ; AVX: # BB#0: 66 ; SSE: # BB#0: 71 ; AVX: # BB#0: [all …]
|
D | vector-shuffle-128-v8.ll | 13 ; SSE: # BB#0: 18 ; AVX: # BB#0: 26 ; SSE: # BB#0: 31 ; AVX: # BB#0: 39 ; SSE2: # BB#0: 44 ; SSSE3: # BB#0: 50 ; SSE41: # BB#0: 56 ; AVX: # BB#0: 65 ; SSE2: # BB#0: 72 ; SSSE3: # BB#0: [all …]
|
/external/llvm/lib/Target/Mips/ |
D | Mips16ISelLowering.cpp | 171 MachineBasicBlock *BB) const { in EmitInstrWithCustomInserter() 174 return MipsTargetLowering::EmitInstrWithCustomInserter(MI, BB); in EmitInstrWithCustomInserter() 176 return emitSel16(Mips::BeqzRxImm16, MI, BB); in EmitInstrWithCustomInserter() 178 return emitSel16(Mips::BnezRxImm16, MI, BB); in EmitInstrWithCustomInserter() 180 return emitSeliT16(Mips::Bteqz16, Mips::CmpiRxImmX16, MI, BB); in EmitInstrWithCustomInserter() 182 return emitSeliT16(Mips::Bteqz16, Mips::SltiRxImmX16, MI, BB); in EmitInstrWithCustomInserter() 184 return emitSeliT16(Mips::Bteqz16, Mips::SltiuRxImmX16, MI, BB); in EmitInstrWithCustomInserter() 186 return emitSeliT16(Mips::Btnez16, Mips::CmpiRxImmX16, MI, BB); in EmitInstrWithCustomInserter() 188 return emitSeliT16(Mips::Btnez16, Mips::SltiRxImmX16, MI, BB); in EmitInstrWithCustomInserter() 190 return emitSeliT16(Mips::Btnez16, Mips::SltiuRxImmX16, MI, BB); in EmitInstrWithCustomInserter() [all …]
|
/external/llvm/lib/CodeGen/ |
D | IfConversion.cpp | 122 MachineBasicBlock *BB; member 131 ExtraCost(0), ExtraCost2(0), BB(nullptr), TrueBB(nullptr), in BBInfo() 205 void InvalidatePreds(MachineBasicBlock *BB); 220 bool MeetIfcvtSizeLimit(MachineBasicBlock &BB, in MeetIfcvtSizeLimit() argument 223 return Cycle > 0 && TII->isProfitableToIfCvt(BB, Cycle, Extra, in MeetIfcvtSizeLimit() 259 return C1->BBI.BB->getNumber() < C2->BBI.BB->getNumber(); in IfcvtTokenCmp() 349 << "): BB#" << BBI.BB->getNumber() << " (" in INITIALIZE_PASS_DEPENDENCY() 376 DEBUG(dbgs() << "): BB#" << BBI.BB->getNumber() << " (T:" in INITIALIZE_PASS_DEPENDENCY() 394 DEBUG(dbgs() << "Ifcvt (Diamond): BB#" << BBI.BB->getNumber() << " (T:" in INITIALIZE_PASS_DEPENDENCY() 439 static MachineBasicBlock *findFalseBlock(MachineBasicBlock *BB, in findFalseBlock() argument [all …]
|
D | MachineSSAUpdater.cpp | 64 bool MachineSSAUpdater::HasValueForBlock(MachineBasicBlock *BB) const { in HasValueForBlock() 65 return getAvailableVals(AV).count(BB); in HasValueForBlock() 70 void MachineSSAUpdater::AddAvailableValue(MachineBasicBlock *BB, unsigned V) { in AddAvailableValue() argument 71 getAvailableVals(AV)[BB] = V; in AddAvailableValue() 76 unsigned MachineSSAUpdater::GetValueAtEndOfBlock(MachineBasicBlock *BB) { in GetValueAtEndOfBlock() argument 77 return GetValueAtEndOfBlockInternal(BB); in GetValueAtEndOfBlock() 81 unsigned LookForIdenticalPHI(MachineBasicBlock *BB, in LookForIdenticalPHI() argument 83 if (BB->empty()) in LookForIdenticalPHI() 86 MachineBasicBlock::iterator I = BB->begin(); in LookForIdenticalPHI() 93 while (I != BB->end() && I->isPHI()) { in LookForIdenticalPHI() [all …]
|
D | UnreachableBlockElim.cpp | 67 for (BasicBlock *BB : depth_first_ext(&F, Reachable)) in runOnFunction() 68 (void)BB/* Mark all reachable blocks */; in runOnFunction() 75 BasicBlock *BB = &*I; in runOnFunction() local 76 DeadBlocks.push_back(BB); in runOnFunction() 77 while (PHINode *PN = dyn_cast<PHINode>(BB->begin())) { in runOnFunction() 79 BB->getInstList().pop_front(); in runOnFunction() 81 for (succ_iterator SI = succ_begin(BB), E = succ_end(BB); SI != E; ++SI) in runOnFunction() 82 (*SI)->removePredecessor(BB); in runOnFunction() 83 BB->dropAllReferences(); in runOnFunction() 127 for (MachineBasicBlock *BB : depth_first_ext(&F, Reachable)) in runOnMachineFunction() [all …]
|
/external/llvm/lib/Transforms/Scalar/ |
D | JumpThreading.cpp | 146 bool ProcessBlock(BasicBlock *BB); 147 bool ThreadEdge(BasicBlock *BB, const SmallVectorImpl<BasicBlock*> &PredBBs, 149 bool DuplicateCondBranchOnPHIIntoPred(BasicBlock *BB, 152 bool ComputeValueKnownInPredecessors(Value *V, BasicBlock *BB, 156 bool ProcessThreadableEdges(Value *Cond, BasicBlock *BB, 162 bool ProcessImpliedCondition(BasicBlock *BB); 165 bool TryToUnfoldSelect(CmpInst *CondCmp, BasicBlock *BB); 168 BasicBlock *SplitBlockPreds(BasicBlock *BB, ArrayRef<BasicBlock *> Preds, 170 void UpdateBlockFreqAndEdgeWeight(BasicBlock *PredBB, BasicBlock *BB, 221 BasicBlock *BB = &*I; in runOnFunction() local [all …]
|
D | MergedLoadStoreMotion.cpp | 135 BasicBlock *getDiamondTail(BasicBlock *BB); 136 bool isDiamondHead(BasicBlock *BB); 141 LoadInst *canHoistFromBlock(BasicBlock *BB, LoadInst *LI); 142 void hoistInstruction(BasicBlock *BB, Instruction *HoistCand, 145 bool hoistLoad(BasicBlock *BB, LoadInst *HoistCand, LoadInst *ElseInst); 146 bool mergeLoads(BasicBlock *BB); 148 StoreInst *canSinkFromBlock(BasicBlock *BB, StoreInst *SI); 149 PHINode *getPHIOperand(BasicBlock *BB, StoreInst *S0, StoreInst *S1); 152 bool sinkStore(BasicBlock *BB, StoreInst *SinkCand, StoreInst *ElseInst); 153 bool mergeStores(BasicBlock *BB); [all …]
|
/external/llvm/include/llvm/IR/ |
D | CFG.h | 91 inline pred_iterator pred_begin(BasicBlock *BB) { return pred_iterator(BB); } in pred_begin() argument 92 inline const_pred_iterator pred_begin(const BasicBlock *BB) { in pred_begin() argument 93 return const_pred_iterator(BB); in pred_begin() 95 inline pred_iterator pred_end(BasicBlock *BB) { return pred_iterator(BB, true);} in pred_end() argument 96 inline const_pred_iterator pred_end(const BasicBlock *BB) { in pred_end() argument 97 return const_pred_iterator(BB, true); in pred_end() 99 inline bool pred_empty(const BasicBlock *BB) { in pred_empty() argument 100 return pred_begin(BB) == pred_end(BB); in pred_empty() 102 inline pred_range predecessors(BasicBlock *BB) { in predecessors() argument 103 return pred_range(pred_begin(BB), pred_end(BB)); in predecessors() [all …]
|
D | InstIterator.h | 36 BB_i_t BB; // BasicBlocksType::iterator variable 51 : BBs(II.BBs), BB(II.BB), BI(II.BI) {} in InstIterator() 55 : BBs(II.BBs), BB(II.BB), BI(II.BI) {} in InstIterator() 58 : BBs(&m.getBasicBlockList()), BB(BBs->begin()) { // begin ctor in InstIterator() 59 if (BB != BBs->end()) { in InstIterator() 60 BI = BB->begin(); in InstIterator() 66 : BBs(&m.getBasicBlockList()), BB(BBs->end()) { // end ctor in InstIterator() 70 inline BBIty &getBasicBlockIterator() { return BB; } in getBasicBlockIterator() 77 return BB == y.BB && (BB == BBs->end() || BI == y.BI); 93 while (BB == BBs->end() || BI == BB->begin()) { [all …]
|
D | PredIteratorCache.h | 43 BasicBlock **GetPreds(BasicBlock *BB) { in GetPreds() argument 44 BasicBlock **&Entry = BlockToPredsMap[BB]; in GetPreds() 48 SmallVector<BasicBlock *, 32> PredCache(pred_begin(BB), pred_end(BB)); in GetPreds() 51 BlockToPredCountMap[BB] = PredCache.size() - 1; in GetPreds() 58 unsigned GetNumPreds(BasicBlock *BB) { in GetNumPreds() argument 59 GetPreds(BB); in GetNumPreds() 60 return BlockToPredCountMap[BB]; in GetNumPreds() 64 size_t size(BasicBlock *BB) { return GetNumPreds(BB); } in size() argument 65 ArrayRef<BasicBlock *> get(BasicBlock *BB) { in get() argument 66 return makeArrayRef(GetPreds(BB), GetNumPreds(BB)); in get()
|
/external/llvm/lib/Analysis/ |
D | CFG.cpp | 29 const BasicBlock *BB = &F.getEntryBlock(); in FindFunctionBackedges() local 30 if (succ_empty(BB)) in FindFunctionBackedges() 37 Visited.insert(BB); in FindFunctionBackedges() 38 VisitStack.push_back(std::make_pair(BB, succ_begin(BB))); in FindFunctionBackedges() 39 InStack.insert(BB); in FindFunctionBackedges() 47 BB = *I++; in FindFunctionBackedges() 48 if (Visited.insert(BB).second) { in FindFunctionBackedges() 53 if (InStack.count(BB)) in FindFunctionBackedges() 54 Result.push_back(std::make_pair(ParentBB, BB)); in FindFunctionBackedges() 59 InStack.insert(BB); in FindFunctionBackedges() [all …]
|
D | BranchProbabilityInfo.cpp | 122 bool BranchProbabilityInfo::calcUnreachableHeuristics(BasicBlock *BB) { in calcUnreachableHeuristics() argument 123 TerminatorInst *TI = BB->getTerminator(); in calcUnreachableHeuristics() 126 PostDominatedByUnreachable.insert(BB); in calcUnreachableHeuristics() 133 for (succ_iterator I = succ_begin(BB), E = succ_end(BB); I != E; ++I) { in calcUnreachableHeuristics() 143 PostDominatedByUnreachable.insert(BB); in calcUnreachableHeuristics() 154 PostDominatedByUnreachable.insert(BB); in calcUnreachableHeuristics() 165 setEdgeWeight(BB, *I, UnreachableWeight); in calcUnreachableHeuristics() 175 setEdgeWeight(BB, *I, ReachableWeight); in calcUnreachableHeuristics() 182 bool BranchProbabilityInfo::calcMetadataWeights(BasicBlock *BB) { in calcMetadataWeights() argument 183 TerminatorInst *TI = BB->getTerminator(); in calcMetadataWeights() [all …]
|
/external/llvm/include/llvm/Analysis/ |
D | LoopIterator.h | 84 bool hasPreorder(BasicBlock *BB) const { return PostNumbers.count(BB); } in hasPreorder() argument 87 bool hasPostorder(BasicBlock *BB) const { in hasPostorder() argument 88 DenseMap<BasicBlock*, unsigned>::const_iterator I = PostNumbers.find(BB); in hasPostorder() 93 unsigned getPostorder(BasicBlock *BB) const { in getPostorder() argument 94 DenseMap<BasicBlock*, unsigned>::const_iterator I = PostNumbers.find(BB); in getPostorder() 101 unsigned getRPO(BasicBlock *BB) const { in getRPO() argument 102 return 1 + PostBlocks.size() - getPostorder(BB); in getRPO() 118 void finishPostorder(BasicBlock *BB); 153 bool visitPreorder(BasicBlock *BB) { in visitPreorder() argument 154 if (!DFS.L->contains(LI->getLoopFor(BB))) in visitPreorder() [all …]
|
D | RegionInfoImpl.h | 54 void RegionBase<Tr>::replaceEntry(BlockT *BB) { in replaceEntry() argument 55 this->entry.setPointer(BB); in replaceEntry() 59 void RegionBase<Tr>::replaceExit(BlockT *BB) { in replaceExit() argument 61 exit = BB; in replaceExit() 104 BlockT *BB = const_cast<BlockT *>(B); in contains() local 106 if (!DT->getNode(BB)) in contains() 115 return (DT->dominates(entry, BB) && in contains() 116 !(DT->dominates(exit, BB) && DT->dominates(entry, exit))); in contains() 133 for (BlockT *BB : ExitingBlocks) { in contains() 134 if (!contains(BB)) in contains() [all …]
|
/external/llvm/test/Transforms/SimplifyCFG/ |
D | 2008-05-16-PHIBlockMerge.ll | 2 ; RUN: not grep "^BB.tomerge" %t 3 ; RUN: grep "^BB.nomerge" %t | count 2 13 br label %BB.nomerge 15 BB.nomerge: ; preds = %Common, %entry 21 Succ: ; preds = %Common, %BB.nomerge 22 %b = phi i32 [ %a, %BB.nomerge ], [ 2, %Common ] ; <i32> [#uses=0] 28 br i1 %cond, label %BB.nomerge, label %Succ 37 br label %BB.nomerge 39 BB.nomerge: ; preds = %Common, %entry 42 Succ: ; preds = %Common, %BB.nomerge [all …]
|
/external/llvm/lib/Transforms/Utils/ |
D | BasicBlockUtils.cpp | 36 void llvm::DeleteDeadBlock(BasicBlock *BB) { in DeleteDeadBlock() argument 37 assert((pred_begin(BB) == pred_end(BB) || in DeleteDeadBlock() 39 BB->getSinglePredecessor() == BB) && "Block is not dead!"); in DeleteDeadBlock() 40 TerminatorInst *BBTerm = BB->getTerminator(); in DeleteDeadBlock() 45 Succ->removePredecessor(BB); in DeleteDeadBlock() 48 while (!BB->empty()) { in DeleteDeadBlock() 49 Instruction &I = BB->back(); in DeleteDeadBlock() 57 BB->getInstList().pop_back(); in DeleteDeadBlock() 61 BB->eraseFromParent(); in DeleteDeadBlock() 68 void llvm::FoldSingleEntryPHINodes(BasicBlock *BB, in FoldSingleEntryPHINodes() argument [all …]
|
D | SSAUpdater.cpp | 54 bool SSAUpdater::HasValueForBlock(BasicBlock *BB) const { in HasValueForBlock() 55 return getAvailableVals(AV).count(BB); in HasValueForBlock() 58 void SSAUpdater::AddAvailableValue(BasicBlock *BB, Value *V) { in AddAvailableValue() argument 62 getAvailableVals(AV)[BB] = V; in AddAvailableValue() 81 Value *SSAUpdater::GetValueAtEndOfBlock(BasicBlock *BB) { in GetValueAtEndOfBlock() argument 82 Value *Res = GetValueAtEndOfBlockInternal(BB); in GetValueAtEndOfBlock() 86 Value *SSAUpdater::GetValueInMiddleOfBlock(BasicBlock *BB) { in GetValueInMiddleOfBlock() argument 89 if (!HasValueForBlock(BB)) in GetValueInMiddleOfBlock() 90 return GetValueAtEndOfBlock(BB); in GetValueInMiddleOfBlock() 100 if (PHINode *SomePhi = dyn_cast<PHINode>(BB->begin())) { in GetValueInMiddleOfBlock() [all …]
|
D | Local.cpp | 65 bool llvm::ConstantFoldTerminator(BasicBlock *BB, bool DeleteDeadConditions, in ConstantFoldTerminator() argument 67 TerminatorInst *T = BB->getTerminator(); in ConstantFoldTerminator() 88 OldDest->removePredecessor(BB); in ConstantFoldTerminator() 162 MDBuilder(BB->getContext()). in ConstantFoldTerminator() 189 BasicBlock *BB = SI->getParent(); in ConstantFoldTerminator() local 197 Succ->removePredecessor(BB); in ConstantFoldTerminator() 228 MDBuilder(BB->getContext()). in ConstantFoldTerminator() 268 BB->getTerminator()->eraseFromParent(); in ConstantFoldTerminator() 269 new UnreachableInst(BB->getContext(), BB); in ConstantFoldTerminator() 471 bool llvm::SimplifyInstructionsInBlock(BasicBlock *BB, in SimplifyInstructionsInBlock() argument [all …]
|
/external/mesa3d/src/gallium/drivers/radeon/ |
D | SIISelLowering.cpp | 66 MachineInstr * MI, MachineBasicBlock * BB) const in EmitInstrWithCustomInserter() 69 MachineRegisterInfo & MRI = BB->getParent()->getRegInfo(); in EmitInstrWithCustomInserter() 73 AppendS_WAITCNT(MI, *BB, llvm::next(I)); in EmitInstrWithCustomInserter() 74 return BB; in EmitInstrWithCustomInserter() 79 return AMDGPUTargetLowering::EmitInstrWithCustomInserter(MI, BB); in EmitInstrWithCustomInserter() 82 BuildMI(*BB, I, BB->findDebugLoc(I), TII->get(AMDGPU::V_MOV_B32_e64)) in EmitInstrWithCustomInserter() 97 BuildMI(*BB, I, BB->findDebugLoc(I), TII->get(AMDGPU::V_MOV_B32_e64)) in EmitInstrWithCustomInserter() 112 BuildMI(*BB, I, BB->findDebugLoc(I), TII->get(AMDGPU::V_MOV_B32_e64)) in EmitInstrWithCustomInserter() 127 LowerSI_INTERP(MI, *BB, I, MRI); in EmitInstrWithCustomInserter() 130 LowerSI_INTERP_CONST(MI, *BB, I, MRI); in EmitInstrWithCustomInserter() [all …]
|
/external/llvm/tools/llvm-stress/ |
D | llvm-stress.cpp | 151 BB(Block),PT(PT),Ran(R),Context(BB->getContext()) {} in Modifier() 289 BasicBlock *BB; member 299 LoadModifier(BasicBlock *BB, PieceTable *PT, Random *R):Modifier(BB, PT, R) {} in LoadModifier() 303 Value *V = new LoadInst(Ptr, "L", BB->getTerminator()); in Act() 309 StoreModifier(BasicBlock *BB, PieceTable *PT, Random *R):Modifier(BB, PT, R) {} in StoreModifier() 322 new StoreInst(Val, Ptr, BB->getTerminator()); in Act() 327 BinModifier(BasicBlock *BB, PieceTable *PT, Random *R):Modifier(BB, PT, R) {} in BinModifier() 344 Instruction* Term = BB->getTerminator(); in Act() 371 ConstModifier(BasicBlock *BB, PieceTable *PT, Random *R):Modifier(BB, PT, R) {} in ConstModifier() 417 AllocaModifier(BasicBlock *BB, PieceTable *PT, Random *R):Modifier(BB, PT, R){} in AllocaModifier() [all …]
|
/external/llvm/lib/Transforms/IPO/ |
D | PruneEH.cpp | 51 void DeleteBasicBlock(BasicBlock *BB); 112 for (const BasicBlock &BB : *F) { in runOnSCC() 113 const TerminatorInst *TI = BB.getTerminator(); in runOnSCC() 120 for (const Instruction &I : BB) { in runOnSCC() 186 for (Function::iterator BB = F->begin(), E = F->end(); BB != E; ++BB) { in SimplifyFunction() local 187 if (InvokeInst *II = dyn_cast<InvokeInst>(BB->getTerminator())) in SimplifyFunction() 214 BB->getInstList().pop_back(); in SimplifyFunction() 224 for (BasicBlock::iterator I = BB->begin(), E = BB->end(); I != E; ) in SimplifyFunction() 231 BasicBlock *New = BB->splitBasicBlock(I); in SimplifyFunction() 234 BB->getInstList().pop_back(); in SimplifyFunction() [all …]
|