LLVM
23.0.0git
lib
Transforms
Vectorize
SandboxVectorizer
SandboxVectorizerPassBuilder.cpp
Go to the documentation of this file.
1
#include "
llvm/Transforms/Vectorize/SandboxVectorizer/SandboxVectorizerPassBuilder.h
"
2
3
#include "
llvm/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.h
"
4
#include "
llvm/Transforms/Vectorize/SandboxVectorizer/Passes/NullPass.h
"
5
#include "
llvm/Transforms/Vectorize/SandboxVectorizer/Passes/PackReuse.h
"
6
#include "
llvm/Transforms/Vectorize/SandboxVectorizer/Passes/PrintInstructionCount.h
"
7
#include "
llvm/Transforms/Vectorize/SandboxVectorizer/Passes/PrintRegion.h
"
8
#include "
llvm/Transforms/Vectorize/SandboxVectorizer/Passes/RegionsFromBBs.h
"
9
#include "
llvm/Transforms/Vectorize/SandboxVectorizer/Passes/RegionsFromMetadata.h
"
10
#include "
llvm/Transforms/Vectorize/SandboxVectorizer/Passes/SeedCollection.h
"
11
#include "
llvm/Transforms/Vectorize/SandboxVectorizer/Passes/TransactionAcceptOrRevert.h
"
12
#include "
llvm/Transforms/Vectorize/SandboxVectorizer/Passes/TransactionAlwaysAccept.h
"
13
#include "
llvm/Transforms/Vectorize/SandboxVectorizer/Passes/TransactionAlwaysRevert.h
"
14
#include "
llvm/Transforms/Vectorize/SandboxVectorizer/Passes/TransactionSave.h
"
15
16
namespace
llvm::sandboxir
{
17
18
std::unique_ptr<sandboxir::RegionPass>
19
SandboxVectorizerPassBuilder::createRegionPass
(
StringRef
Name,
StringRef
Args,
20
StringRef
AuxArg) {
21
#define REGION_PASS(NAME, CLASS_NAME) \
22
if (Name == NAME) { \
23
assert(Args.empty() && "Unexpected arguments for pass '" NAME "'."); \
24
assert(AuxArg.empty() && "TODO: Add RegionPass support for AuxArge);"); \
25
return std::make_unique<CLASS_NAME>(); \
26
}
27
// TODO: Support region passes with params.
28
#include "Passes/PassRegistry.def"
29
return
nullptr
;
30
}
31
32
std::unique_ptr<sandboxir::FunctionPass>
33
SandboxVectorizerPassBuilder::createFunctionPass
(
StringRef
Name,
StringRef
Args,
34
StringRef
AuxArg) {
35
#define FUNCTION_PASS_WITH_PARAMS(NAME, CLASS_NAME) \
36
if (Name == NAME) \
37
return std::make_unique<CLASS_NAME>(Args, AuxArg);
38
#include "Passes/PassRegistry.def"
39
return
nullptr
;
40
}
41
42
}
// namespace llvm::sandboxir
BottomUpVec.h
NullPass.h
PackReuse.h
PrintInstructionCount.h
PrintRegion.h
RegionsFromBBs.h
RegionsFromMetadata.h
SandboxVectorizerPassBuilder.h
SeedCollection.h
TransactionAcceptOrRevert.h
TransactionAlwaysAccept.h
TransactionAlwaysRevert.h
TransactionSave.h
llvm::StringRef
StringRef - Represent a constant reference to a string, i.e.
Definition
StringRef.h:55
llvm::sandboxir::SandboxVectorizerPassBuilder::createRegionPass
static std::unique_ptr< RegionPass > createRegionPass(StringRef Name, StringRef Args, StringRef AuxArg)
Definition
SandboxVectorizerPassBuilder.cpp:19
llvm::sandboxir::SandboxVectorizerPassBuilder::createFunctionPass
static std::unique_ptr< FunctionPass > createFunctionPass(StringRef Name, StringRef Args, StringRef AuxArg)
Definition
SandboxVectorizerPassBuilder.cpp:33
llvm::sandboxir
Definition
Argument.h:15
Generated on
for LLVM by
1.14.0