| /llvm-project/bolt/test/X86/ |
| H A D | pseudoprobe-decoding-inline.test | 53 CHECK: [Probe]: FUNC: bar Index: 1 Type: Block 54 CHECK: [Probe]: FUNC: bar Index: 4 Type: Block 55 CHECK: [Probe]: FUNC: foo Index: 1 Type: Block 56 CHECK: [Probe]: FUNC: foo Index: 2 Type: Block 57 CHECK: [Probe]: FUNC: foo Index: 5 Type: Block 58 CHECK: [Probe]: FUNC: foo Index: 6 Type: Block 59 CHECK: [Probe]: FUNC: foo Index: 2 Type: Block 60 CHECK: [Probe]: FUNC: foo Index: 3 Type: Block 61 CHECK: [Probe]: FUNC: foo Index: 4 Type: Block 62 CHECK: [Probe]: FUNC: bar Index: 1 Type: Block Inline [all...] |
| H A D | pseudoprobe-decoding-noinline.test | 52 CHECK: [Probe]: FUNC: bar Index: 1 Type: Block 53 CHECK: [Probe]: FUNC: bar Index: 4 Type: Block 54 CHECK: [Probe]: FUNC: foo Index: 1 Type: Block 55 CHECK: [Probe]: FUNC: foo Index: 2 Type: Block 56 CHECK: [Probe]: FUNC: foo Index: 5 Type: Block 57 CHECK: [Probe]: FUNC: foo Index: 6 Type: Block 58 CHECK: [Probe]: FUNC: foo Index: 2 Type: Block 59 CHECK: [Probe]: FUNC: foo Index: 3 Type: Block 60 CHECK: [Probe]: FUNC: foo Index: 4 Type: Block 62 CHECK: [Probe]: FUNC: foo Index: 6 Type: Block [all...] |
| /llvm-project/libc/src/__support/ |
| H A D | block.h | 50 /// As an example, the diagram below represents two contiguous `Block`s. The in align_up() 54 /// Block 1: 62 /// Block 2: 75 /// Block 1 (used): 83 /// Block 2: 94 class Block { 102 Block(const Block &other) = delete; 103 Block &operator=(const Block 566 constexpr Block<OffsetType, kAlign>::Block(size_t prev_outer_size, Block() function [all...] |
| /llvm-project/mlir/lib/IR/ |
| H A D | Block.cpp | 1 //===- Block.cpp - MLIR Block Class ---------------------------------------===// 9 #include "mlir/IR/Block.h" 19 // Block in ~Block() 22 Block::~Block() { in ~Block() 29 Region *Block::getParent() const { return parentValidOpOrderPair.getPointer(); } 33 Operation *Block::getParentOp() { 38 bool Block::isEntryBlock() { return this == &getParent()->front(); } 42 void Block in insertBefore() [all...] |
| H A D | Dominance.cpp | 23 template class llvm::DominatorTreeBase<Block, /*IsPostDom=*/false>; 24 template class llvm::DominatorTreeBase<Block, /*IsPostDom=*/true>; 25 template class llvm::DomTreeNodeBase<Block>; 104 static Block *getAncestorBlock(Block *block) { in getAncestorBlock() 116 static Block *traverseAncestors(Block *block, const FuncT &func) { in traverseAncestors() 127 static bool tryGetBlocksInSameRegion(Block *&a, Block *&b) { in tryGetBlocksInSameRegion() 139 if (Block *aResul in tryGetBlocksInSameRegion() [all...] |
| /llvm-project/lldb/source/Symbol/ |
| H A D | Block.cpp | 1 //===-- Block.cpp ---------------------------------------------------------===// 9 #include "lldb/Symbol/Block.h" 24 Block::Block(Function &function, user_id_t function_uid) in Block() function in Block 25 : Block(function_uid, function) {} in Block() 27 Block::Block(lldb::user_id_t uid, SymbolContextScope &parent_scope) in Block() 31 Block::~Block() = default; in GetDescription() 33 void Block in GetDescription() [all...] |
| /llvm-project/mlir/include/mlir/IR/ |
| H A D | BlockSupport.h | 9 // This file defines a number of support types for the Block class. 22 class Block; variable 28 /// A block operand represents an operand that holds a reference to a Block, 30 class BlockOperand : public IROperand<BlockOperand, Block *> { 32 using IROperand<BlockOperand, Block *>::IROperand; 35 static IRObjectWithUseList<BlockOperand> *getUseList(Block *value); 51 Block *(*)(BlockOperand &)> { 52 static Block *unwrap(BlockOperand &value); 58 Block *(*)(BlockOperand &)>(it, &unwrap) {} in PredecessorIterator() 70 /// This class implements the successor iterators for Block [all...] |
| H A D | RegionGraphTraits.h | 23 struct GraphTraits<mlir::Block *> { 24 using ChildIteratorType = mlir::Block::succ_iterator; 25 using Node = mlir::Block; 37 struct GraphTraits<Inverse<mlir::Block *>> { 38 using ChildIteratorType = mlir::Block::pred_iterator; 39 using Node = mlir::Block; 53 struct GraphTraits<const mlir::Block *> { 54 using ChildIteratorType = mlir::Block::succ_iterator; 55 using Node = const mlir::Block; 61 return const_cast<mlir::Block *>(node)->succ_begin(); [all …]
|
| H A D | Dominance.h | 25 extern template class llvm::DominatorTreeBase<mlir::Block, false>; 26 extern template class llvm::DominatorTreeBase<mlir::Block, true>; 27 extern template class llvm::DomTreeNodeBase<mlir::Block>; 30 using DominanceInfoNode = llvm::DomTreeNodeBase<Block>; 36 using DomTree = llvm::DominatorTreeBase<Block, IsPostDom>; 55 Block *findNearestCommonDominator(Block *a, Block *b) const; 60 Block *findNearestCommonDominator(BlockRangeT &&blocks) const { in findNearestCommonDominator() 63 Block *do in findNearestCommonDominator() [all...] |
| H A D | Block.h | 1 //===- Block.h - MLIR Block Class -------------------------------*- C++ -*-===// 9 // This file defines the Block class. 31 /// `Block` represents an ordered list of `Operation`s. 32 class alignas(8) Block : public IRObjectWithUseList<BlockOperand>, 33 public llvm::ilist_node_with_parent<Block, Region> { 35 explicit Block() = default; 36 ~Block(); in clear() 63 void insertBefore(Block *block); 67 void insertAfter(Block *bloc [all...] |
| /llvm-project/clang/lib/Analysis/FlowSensitive/ |
| H A D | AdornedCFG.cpp | 32 for (const CFGBlock *Block : Cfg) { in buildStmtToBasicBlockMap() 33 if (Block == nullptr) in buildStmtToBasicBlockMap() 36 for (const CFGElement &Element : *Block) { in buildStmtToBasicBlockMap() 41 StmtToBlock[Stmt->getStmt()] = Block; in buildStmtToBasicBlockMap() 51 for (const CFGBlock *Block : Cfg) { in buildStmtToBasicBlockMap() 52 if (Block != nullptr) in buildStmtToBasicBlockMap() 53 if (const Stmt *TerminatorCond = Block->getTerminatorCondition()) in buildStmtToBasicBlockMap() 54 StmtToBlock.insert({TerminatorCond, Block}); in buildStmtToBasicBlockMap() 68 for (const CFGBlock *Block : Cfg) { in buildStmtToBasicBlockMap() 69 if (Block ! in buildStmtToBasicBlockMap() 31 for (const CFGBlock *Block : Cfg) { buildStmtToBasicBlockMap() local 50 for (const CFGBlock *Block : Cfg) { buildStmtToBasicBlockMap() local 67 for (const CFGBlock *Block : Cfg) { buildStmtToBasicBlockMap() local 81 const CFGBlock *Block = BlocksToVisit.back(); findReachableBlocks() local 104 __anon3cf8474e0102(const Stmt *S, const CFGBlock *Block) buildContainsExprConsumedInDifferentBlock() argument 114 for (const CFGBlock *Block : Cfg) { buildContainsExprConsumedInDifferentBlock() local [all...] |
| /llvm-project/mlir/lib/Transforms/Utils/ |
| H A D | CFGToSCF.cpp | 133 getMutableSuccessorOperands(Block *block, unsigned successorIndex) { in getMutableSuccessorOperands() 142 static OperandRange getSuccessorOperands(Block *block, in getSuccessorOperands() 149 static void addBlockArgumentsFromOther(Block *block, Block *other) { in addBlockArgumentsFromOther() 160 Block *fromBlock; 166 Edge(Block *fromBlock, unsigned int successorIndex) in Edge() 170 Block *getFromBlock() const { return fromBlock; } in getFromBlock() 173 Block *getSuccessor() const { in getSuccessor() 179 void setSuccessor(Block *block) const { in setSuccessor() 227 static EdgeMultiplexer create(Location loc, ArrayRef<Block *> entryBlocks, in create() 233 auto *multiplexerBlock = new Block; [all …]
|
| /llvm-project/llvm/include/llvm/ADT/ |
| H A D | GenericCycleImpl.h | 58 for (BlockT *Block : blocks()) { in getExitBlocks() 59 llvm::append_range(TmpStorage, successors(Block)); in getExitBlocks() 81 for (BlockT *Block : blocks()) { in getExitingBlocks() 82 for (BlockT *Succ : successors(Block)) { in getExitingBlocks() 84 TmpStorage.push_back(Block); 269 auto GenericCycleInfo<ContextT>::getTopLevelParentCycle(BlockT *Block) in run() 271 auto Cycle = BlockMapTopLevel.find(Block); in run() 275 auto MapIt = BlockMap.find(Block); in run() 282 BlockMapTopLevel.try_emplace(Block, C); in run() 312 void GenericCycleInfo<ContextT>::addBlockToCycle(BlockT *Block, Cycle in run() 203 addBlockToCycle(BlockT * Block,CycleT * Cycle) addBlockToCycle() argument 274 BlockT *Block = Worklist.pop_back_val(); run() local 338 BlockT *Block = TraverseStack.back(); dfs() local 456 getCycleDepth(const BlockT * Block) getCycleDepth() argument 518 BlockT *Block = Entry.first; validateTree() local [all...] |
| /llvm-project/lldb/include/lldb/Symbol/ |
| H A D | Block.h | 1 //===-- Block.h -------------------------------------------------*- C++ -*-===// 25 /// \class Block Block.h "lldb/Symbol/Block.h" 29 /// Block objects. The BlockList object contains a section offset address 30 /// range, and Block objects contain one or more ranges which are offsets into 41 class Block : public UserID, public SymbolContextScope { 48 Block(Function &function, lldb::user_id_t function_uid); 50 ~Block() override; 79 Block *CalculateSymbolContextBloc [all...] |
| /llvm-project/llvm/test/tools/llvm-profgen/ |
| H A D | pseudoprobe-decoding.test | 18 ; CHECK: [Probe]: FUNC: bar Index: 1 Type: Block 19 ; CHECK-NEXT: [Probe]: FUNC: bar Index: 4 Type: Block 23 ; CHECK: [Probe]: FUNC: foo Index: 1 Type: Block 24 ; CHECK-NEXT: [Probe]: FUNC: foo Index: 2 Type: Block 27 ; CHECK: [Probe]: FUNC: foo Index: 5 Type: Block 29 ; CHECK: [Probe]: FUNC: foo Index: 6 Type: Block 30 ; CHECK-NEXT: [Probe]: FUNC: foo Index: 2 Type: Block 33 ; CHECK: [Probe]: FUNC: foo Index: 3 Type: Block 36 ; CHECK: [Probe]: FUNC: foo Index: 4 Type: Block 37 ; CHECK-NEXT: [Probe]: FUNC: bar Index: 1 Type: Block Inlined: @ foo:8 [all …]
|
| /llvm-project/mlir/test/Interfaces/LoopLikeInterface/ |
| H A D | test-block-loop.mlir | 8 // CHECK: Block is not in a loop 18 // CHECK: Block is not in a loop 20 // CHECK: Block is in a loop 32 // CHECK: Block is not in a loop 34 // CHECK: Block is in a loop 36 // CHECK: Block is in a loop 50 // CHECK: Block is not in a loop 52 // CHECK: Block is not in a loop 54 // CHECK: Block is not in a loop 56 // CHECK: Block is not in a loop [all …]
|
| /llvm-project/llvm/unittests/XRay/ |
| H A D | ProfileTest.cpp | 56 Profile::Block{Profile::ThreadID{1}, in TEST() 66 Profile::Block{Profile::ThreadID{1}, in TEST() 74 Field(&Profile::Block::Thread, Eq(Profile::ThreadID{1})), in TEST() 75 Field(&Profile::Block::PathData, in TEST() 90 Profile::Block{Profile::ThreadID{1}, in TEST() 98 Field(&Profile::Block::Thread, Eq(Profile::ThreadID{1})), in TEST() 99 Field(&Profile::Block::PathData, in TEST() 117 Profile::Block{Profile::ThreadID{1}, in TEST() 121 Profile::Block{Profile::ThreadID{2}, in TEST() 126 Profile::Block{Profile::ThreadID{1}, in TEST() [all …]
|
| /llvm-project/mlir/lib/Dialect/Transform/Transforms/ |
| H A D | CheckUses.cpp | 39 const llvm::SmallPtrSet<Block *, 4> & 40 getReachableImpl(Block *block, FnTy getNextNodes, in getReachableImpl() 41 DenseMap<Block *, llvm::SmallPtrSet<Block *, 4>> &cache) { in getReachableImpl() argument 46 llvm::SmallPtrSet<Block *, 4> &reachable = it->second; in getReachableImpl() 47 SmallVector<Block *> worklist; in getReachableImpl() 50 Block *current = worklist.pop_back_val(); in getReachableImpl() 51 for (Block *predecessor : getNextNodes(current)) { in getReachableImpl() 165 Block *defBlock = operand.get().getParentBlock(); in isUseLive() 220 Block *ancestorBloc in isUseLive() [all...] |
| /llvm-project/clang/lib/Analysis/ |
| H A D | CFG.cpp | 493 CFGBlock *Block = nullptr; member in __anon36ae77d00411::CFGBuilder 495 // Block after the current block. 722 return Block; in NYS() 762 void autoCreateBlock() { if (!Block) Block = createBlock(); } in autoCreateBlock() 825 Block = createNoReturnBlock(); in appendConstructor() 831 Block->appendConstructor(CE, CC, cfg->getBumpVectorContext()); 836 Block->appendStmt(CE, cfg->getBumpVectorContext()); in appendCall() 1586 Block = nullptr; // the EXIT block is empty. Create all other blocks lazily. in buildCFG() 1619 Block in buildCFG() [all...] |
| /llvm-project/mlir/include/mlir/Dialect/Bufferization/IR/ |
| H A D | BufferDeallocationOpInterface.h | 119 Block *block = nullptr); 123 void resetOwnerships(ValueRange memrefs, Block *block); 126 Ownership getOwnership(Value memref, Block *block) const; 129 void addMemrefToDeallocate(Value memref, Block *block); 134 void dropMemrefToDeallocate(Value memref, Block *block); 138 void getLiveMemrefsIn(Block *block, SmallVectorImpl<Value> &memrefs); 146 getMemrefWithUniqueOwnership(OpBuilder &builder, Value memref, Block *block); 157 void getMemrefsToRetain(Block *fromBlock, Block *toBlock, 181 Block *block, 196 DenseMap<std::pair<Value, Block *>, Ownership> ownershipMap; [all …]
|
| /llvm-project/clang/docs/ |
| H A D | BlockLanguageSpec.rst | 16 - 2008/8/13 --- revised, Block globals 28 The Block Type 31 Like function types, the :block-term:`Block type` is a pair consisting 44 describes a reference to a Block that, when invoked, takes two 46 returns a value of type int. The Block referenced is of opaque data 50 Block Variable Declarations 53 A :block-term:`variable with Block type` is declared using function 55 valid Block variable declarations: 63 Variadic ``...`` arguments are supported. [variadic.c] A Block that 69 A Block reference may be cast to a pointer of arbitrary type and vice [all …]
|
| /llvm-project/llvm/lib/Transforms/Vectorize/ |
| H A D | VPlanCFG.h | 39 BlockPtrTy Block; 52 /// Templated helper to dereference successor \p SuccIdx of \p Block. Used by 54 template <typename T1> static T1 deref(T1 Block, unsigned SuccIdx) { in deref() 55 if (auto *R = dyn_cast<VPRegionBlock>(Block)) { in deref() 61 return getBlockWithSuccs(Block)->getSuccessors()[SuccIdx]; in deref() 68 VPAllSuccessorsIterator(BlockPtrTy Block, size_t Idx = 0) in Block() argument 69 : Block(Block), SuccessorIdx(Idx) {} in VPAllSuccessorsIterator() 71 : Block(Other.Block), SuccessorId in VPAllSuccessorsIterator() 38 BlockPtrTy Block; global() variable 53 deref(T1 Block,unsigned SuccIdx) deref() argument 78 end(BlockPtrTy Block) end() argument [all...] |
| /llvm-project/mlir/lib/Dialect/Bufferization/Transforms/ |
| H A D | BufferOptimizations.cpp | 73 static_cast<uint8_t>(allocOp.getHoistingKind() & HoistingKind::Block); in allowAllocDominateBlockHoisting() 165 Block *placementBlock; 169 Block *placementBlock) in BufferAllocationHoistingStateBase() 199 Block *dominatorBlock = in hoist() 205 Block *dependencyBlock = nullptr; in hoist() 210 Block *depBlock = depValue.getParentBlock(); in hoist() 218 Block *placementBlock = findPlacementBlock( in hoist() 233 Block *findPlacementBlock(StateT &state, Block *upperBound) { in findPlacementBlock() 234 Block *currentBlock = state.placementBlock; in findPlacementBlock() 243 Block *parentBlock; in findPlacementBlock() [all …]
|
| /llvm-project/clang/include/clang/Analysis/FlowSensitive/ |
| H A D | DataflowWorklist.h | 33 void enqueueBlock(const CFGBlock *Block) { in enqueueBlock() argument 34 if (Block && !EnqueuedBlocks[Block->getBlockID()]) { in enqueueBlock() 35 EnqueuedBlocks[Block->getBlockID()] = true; in enqueueBlock() 36 WorkList.push(Block); in enqueueBlock() 69 void enqueueSuccessors(const CFGBlock *Block) { in enqueueSuccessors() 70 for (auto B : Block->succs()) in enqueueSuccessors() 82 void enqueueSuccessors(const CFGBlock *Block) { in enqueueSuccessors() 83 for (auto B : Block->succs()) in enqueueSuccessors() 97 void enqueuePredecessors(const CFGBlock *Block) { in enqueuePredecessors() 98 for (auto B : Block->preds()) in enqueuePredecessors()
|
| /llvm-project/mlir/lib/Analysis/ |
| H A D | Liveness.cpp | 34 BlockInfoBuilder(Block *block) : block(block) { in BlockInfoBuilder() 41 Block *ownerBlock = useOp->getBlock(); in BlockInfoBuilder() 76 for (Block &child : region.getBlocks()) in BlockInfoBuilder() 104 void updateLiveOut(const DenseMap<Block *, BlockInfoBuilder> &builders) { in updateLiveOut() 105 for (Block *succ : block->getSuccessors()) { in updateLiveOut() 112 Block *block{nullptr}; 130 DenseMap<Block *, BlockInfoBuilder> &builders) { in buildBlockMapping() argument 131 SetVector<Block *> toProcess; in buildBlockMapping() 133 operation->walk<WalkOrder::PreOrder>([&](Block *block) { in buildBlockMapping() 143 Block *current = toProcess.pop_back_val(); in buildBlockMapping() [all …]
|