LLVM: include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.h Source File (original) (raw)
1
2
3
4
5
6
7
8
9
10
11
12#ifndef LLVM_TRANSFORMS_VECTORIZE_SANDBOXVECTORIZER_PASSES_BOTTOMUPVEC_H
13#define LLVM_TRANSFORMS_VECTORIZE_SANDBOXVECTORIZER_PASSES_BOTTOMUPVEC_H
14
22
24
25
26
27
28
29
30
31
32
33
34
36 bool Change = false;
37
39
40 std::unique_ptr IMaps;
41
42
43 unsigned long BottomUpInvocationCnt = 0;
44
45
46
48
49
50 void tryEraseDeadInstrs();
51
52
55
56
58
59
60
61
63
64
65 class ActionsVector {
66 private:
68
69 public:
70 auto begin() const { return Actions.begin(); }
71 auto end() const { return Actions.end(); }
72 void push_back(std::unique_ptr &&ActPtr) {
73 ActPtr->Idx = Actions.size();
74 Actions.push_back(std::move(ActPtr));
75 }
76 void clear() { Actions.clear(); }
77#ifndef NDEBUG
79 void dump() const;
80#endif
81 };
82 ActionsVector Actions;
83
84
85 unsigned DebugBndlCnt = 0;
86
87
88
91
92
93 Value *emitVectors();
94
96
97public:
100};
101
102}
103
104#endif
static GCRegistry::Add< ErlangGC > A("erlang", "erlang-compatible garbage collector")
ArrayRef - Represent a constant reference to an array (0 or more elements consecutively in memory),...
Implements a dense probed hash-table based set.
This is a 'vector' (really, a variable-sized array), optimized for the case when the array is small.
This class implements an extremely fast bulk output stream that can only output to a stream.
bool runOnRegion(Region &Rgn, const Analyses &A) final
\Returns true if it modifies R.
BottomUpVec()
Definition BottomUpVec.h:98
Performs the legality analysis and returns a LegalityResult object.
LLVM_ABI_FOR_TEST virtual LLVM_DUMP_METHOD void dump() const
virtual void print(raw_ostream &OS) const
RegionPass(StringRef Name)
Name can't contain any spaces or start with '-'.
The main job of the Region is to point to new instructions generated by vectorization passes.
A SandboxIR Value has users. This is the base class.
BasicBlock(llvm::BasicBlock *BB, Context &SBCtx)
LLVM_ABI iterator begin() const