LLVM 20.0.0git
Macros | Variables
LoopIdiomVectorize.cpp File Reference
#include "llvm/Transforms/Vectorize/LoopIdiomVectorize.h"
#include "llvm/Analysis/DomTreeUpdater.h"
#include "llvm/Analysis/LoopPass.h"
#include "llvm/Analysis/TargetTransformInfo.h"
#include "llvm/IR/Dominators.h"
#include "llvm/IR/IRBuilder.h"
#include "llvm/IR/Intrinsics.h"
#include "llvm/IR/MDBuilder.h"
#include "llvm/IR/PatternMatch.h"
#include "llvm/Transforms/Utils/BasicBlockUtils.h"

Go to the source code of this file.

Macros

#define DEBUG_TYPE   "loop-idiom-vectorize"
 

Variables

static cl::opt< boolDisableAll ("disable-loop-idiom-vectorize-all", cl::Hidden, cl::init(false), cl::desc("Disable Loop Idiom Vectorize Pass."))
 
static cl::opt< LoopIdiomVectorizeStyleLITVecStyle ("loop-idiom-vectorize-style", cl::Hidden, cl::desc("The vectorization style for loop idiom transform."), cl::values(clEnumValN(LoopIdiomVectorizeStyle::Masked, "masked", "Use masked vector intrinsics"), clEnumValN(LoopIdiomVectorizeStyle::Predicated, "predicated", "Use VP intrinsics")), cl::init(LoopIdiomVectorizeStyle::Masked))
 
static cl::opt< boolDisableByteCmp ("disable-loop-idiom-vectorize-bytecmp", cl::Hidden, cl::init(false), cl::desc("Proceed with Loop Idiom Vectorize Pass, but do " "not convert byte-compare loop(s)."))
 
static cl::opt< unsignedByteCmpVF ("loop-idiom-vectorize-bytecmp-vf", cl::Hidden, cl::desc("The vectorization factor for byte-compare patterns."), cl::init(16))
 
static cl::opt< boolVerifyLoops ("loop-idiom-vectorize-verify", cl::Hidden, cl::init(false), cl::desc("Verify loops generated Loop Idiom Vectorize Pass."))
 

Macro Definition Documentation

◆ DEBUG_TYPE

#define DEBUG_TYPE   "loop-idiom-vectorize"

Definition at line 56 of file LoopIdiomVectorize.cpp.

Variable Documentation

◆ ByteCmpVF

cl::opt< unsigned > ByteCmpVF("loop-idiom-vectorize-bytecmp-vf", cl::Hidden, cl::desc("The vectorization factor for byte-compare patterns."), cl::init(16)) ( "loop-idiom-vectorize-bytecmp-vf"  ,
cl::Hidden  ,
cl::desc("The vectorization factor for byte-compare patterns.")  ,
cl::init(16)   
)
static

◆ DisableAll

cl::opt< bool > DisableAll("disable-loop-idiom-vectorize-all", cl::Hidden, cl::init(false), cl::desc("Disable Loop Idiom Vectorize Pass.")) ( "disable-loop-idiom-vectorize-all"  ,
cl::Hidden  ,
cl::init(false)  ,
cl::desc("Disable Loop Idiom Vectorize Pass.")   
)
static

◆ DisableByteCmp

cl::opt< bool > DisableByteCmp("disable-loop-idiom-vectorize-bytecmp", cl::Hidden, cl::init(false), cl::desc("Proceed with Loop Idiom Vectorize Pass, but do " "not convert byte-compare loop(s).")) ( "disable-loop-idiom-vectorize-bytecmp"  ,
cl::Hidden  ,
cl::init(false)  ,
cl::desc("Proceed with Loop Idiom Vectorize Pass, but do " "not convert byte-compare loop(s).")   
)
static

◆ LITVecStyle

cl::opt< LoopIdiomVectorizeStyle > LITVecStyle("loop-idiom-vectorize-style", cl::Hidden, cl::desc("The vectorization style for loop idiom transform."), cl::values(clEnumValN(LoopIdiomVectorizeStyle::Masked, "masked", "Use masked vector intrinsics"), clEnumValN(LoopIdiomVectorizeStyle::Predicated, "predicated", "Use VP intrinsics")), cl::init(LoopIdiomVectorizeStyle::Masked)) ( "loop-idiom-vectorize-style"  ,
cl::Hidden  ,
cl::desc("The vectorization style for loop idiom transform.")  ,
cl::values(clEnumValN(LoopIdiomVectorizeStyle::Masked, "masked", "Use masked vector intrinsics"), clEnumValN(LoopIdiomVectorizeStyle::Predicated, "predicated", "Use VP intrinsics"))  ,
cl::init(LoopIdiomVectorizeStyle::Masked)   
)
static

◆ VerifyLoops

cl::opt< bool > VerifyLoops("loop-idiom-vectorize-verify", cl::Hidden, cl::init(false), cl::desc("Verify loops generated Loop Idiom Vectorize Pass.")) ( "loop-idiom-vectorize-verify"  ,
cl::Hidden  ,
cl::init(false)  ,
cl::desc("Verify loops generated Loop Idiom Vectorize Pass.")   
)
static