LLVM: include/llvm/Transforms/Instrumentation/BlockCoverageInference.h Source File (original) (raw)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15#ifndef LLVM_TRANSFORMS_INSTRUMENTATION_BLOCKCOVERAGEINFERENCE_H
16#define LLVM_TRANSFORMS_INSTRUMENTATION_BLOCKCOVERAGEINFERENCE_H
17
22
23namespace llvm {
24
28
31
32public:
34
36
37
39
40
41
43
44
46
47
49
50
51
52
53
54
57
58private:
60 bool ForceInstrumentEntry;
61
62
63
65
66
67
69
70
72
73
74
76 bool IsForward, BlockSet &Reachable) const;
77
79 static std::string getBlockNames(BlockSet BBs) {
81 }
82};
83
84}
85
86#endif
This file defines the DenseMap class.
static bool findDependencies(DependenceKind Flavor, const Value *Arg, BasicBlock *StartBB, Instruction *StartInst, SmallPtrSetImpl< Instruction * > &DependingInsts, ProvenanceAnalysis &PA)
Walk up the CFG from StartPos (which is in StartBB) and find local and non-local dependencies on Arg.
This file implements a set that has insertion order iteration characteristics.
ArrayRef - Represent a constant reference to an array (0 or more elements consecutively in memory),...
LLVM Basic Block Representation.
void dump(raw_ostream &OS) const
Dump the inference graph.
uint64_t getInstrumentedBlocksHash() const
bool shouldInstrumentBlock(const BasicBlock &BB) const
void viewBlockCoverageGraph(const DenseMap< const BasicBlock *, bool > *Coverage=nullptr) const
View the inferred block coverage as a dot file.
BlockCoverageInference(const Function &F, bool ForceInstrumentEntry)
friend class DotFuncBCIInfo
Definition BlockCoverageInference.h:30
BlockSet getDependencies(const BasicBlock &BB) const
SmallSetVector< const BasicBlock *, 4 > BlockSet
Definition BlockCoverageInference.h:33
iterator end()
Get an iterator to the end of the SetVector.
iterator begin()
Get an iterator to the beginning of the SetVector.
A SetVector that performs no allocations if smaller than a certain size.
This class implements an extremely fast bulk output stream that can only output to a stream.
This is an optimization pass for GlobalISel generic memory operations.