LLVM 19.0.0git
Namespaces | Macros | Functions | Variables
AArch64LoopIdiomTransform.cpp File Reference
#include "AArch64LoopIdiomTransform.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/InitializePasses.h"
#include "llvm/Transforms/Utils/BasicBlockUtils.h"

Go to the source code of this file.

Namespaces

namespace  llvm
 This is an optimization pass for GlobalISel generic memory operations.
 

Macros

#define DEBUG_TYPE   "aarch64-loop-idiom-transform"
 

Functions

void llvm::initializeAArch64LoopIdiomTransformLegacyPassPass (PassRegistry &)
 
Passllvm::createAArch64LoopIdiomTransformPass ()
 
 INITIALIZE_PASS_BEGIN (AArch64LoopIdiomTransformLegacyPass, "aarch64-lit", "Transform specific loop idioms into optimized vector forms", false, false) INITIALIZE_PASS_END(AArch64LoopIdiomTransformLegacyPass
 

Variables

static cl::opt< boolDisableAll ("disable-aarch64-lit-all", cl::Hidden, cl::init(false), cl::desc("Disable AArch64 Loop Idiom Transform Pass."))
 
static cl::opt< boolDisableByteCmp ("disable-aarch64-lit-bytecmp", cl::Hidden, cl::init(false), cl::desc("Proceed with AArch64 Loop Idiom Transform Pass, but do " "not convert byte-compare loop(s)."))
 
static cl::opt< boolVerifyLoops ("aarch64-lit-verify", cl::Hidden, cl::init(false), cl::desc("Verify loops generated AArch64 Loop Idiom Transform Pass."))
 
aarch64 lit
 
aarch64 Transform specific loop idioms into optimized vector forms
 
aarch64 Transform specific loop idioms into optimized vector false
 

Macro Definition Documentation

◆ DEBUG_TYPE

#define DEBUG_TYPE   "aarch64-loop-idiom-transform"

Definition at line 53 of file AArch64LoopIdiomTransform.cpp.

Function Documentation

◆ INITIALIZE_PASS_BEGIN()

INITIALIZE_PASS_BEGIN ( AArch64LoopIdiomTransformLegacyPass  ,
"aarch64-lit"  ,
"Transform specific loop idioms into optimized vector forms"  ,
false  ,
false   
)

Variable Documentation

◆ DisableAll

cl::opt< bool > DisableAll("disable-aarch64-lit-all", cl::Hidden, cl::init(false), cl::desc("Disable AArch64 Loop Idiom Transform Pass.")) ( "disable-aarch64-lit-all"  ,
cl::Hidden  ,
cl::init(false)  ,
cl::desc("Disable AArch64 Loop Idiom Transform Pass.")   
)
static

◆ DisableByteCmp

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

◆ false

aarch64 Transform specific loop idioms into optimized vector false

Definition at line 162 of file AArch64LoopIdiomTransform.cpp.

◆ forms

aarch64 Transform specific loop idioms into optimized vector forms

Definition at line 162 of file AArch64LoopIdiomTransform.cpp.

◆ lit

aarch64 lit

Definition at line 161 of file AArch64LoopIdiomTransform.cpp.

◆ VerifyLoops

cl::opt< bool > VerifyLoops("aarch64-lit-verify", cl::Hidden, cl::init(false), cl::desc("Verify loops generated AArch64 Loop Idiom Transform Pass.")) ( "aarch64-lit-verify"  ,
cl::Hidden  ,
cl::init(false)  ,
cl::desc("Verify loops generated AArch64 Loop Idiom Transform Pass.")   
)
static