LLVM 20.0.0git
Namespaces | Functions | Variables
HexagonGenExtract.cpp File Reference
#include "llvm/ADT/APInt.h"
#include "llvm/ADT/GraphTraits.h"
#include "llvm/IR/BasicBlock.h"
#include "llvm/IR/CFG.h"
#include "llvm/IR/Constants.h"
#include "llvm/IR/Dominators.h"
#include "llvm/IR/Function.h"
#include "llvm/IR/IRBuilder.h"
#include "llvm/IR/Instruction.h"
#include "llvm/IR/Instructions.h"
#include "llvm/IR/Intrinsics.h"
#include "llvm/IR/IntrinsicsHexagon.h"
#include "llvm/IR/PatternMatch.h"
#include "llvm/IR/Type.h"
#include "llvm/IR/Value.h"
#include "llvm/InitializePasses.h"
#include "llvm/Pass.h"
#include "llvm/Support/CommandLine.h"
#include <algorithm>
#include <cstdint>
#include <iterator>

Go to the source code of this file.

Namespaces

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

Functions

void llvm::initializeHexagonGenExtractPass (PassRegistry &)
 
FunctionPassllvm::createHexagonGenExtract ()
 
 INITIALIZE_PASS_BEGIN (HexagonGenExtract, "hextract", "Hexagon generate " "\"extract\" instructions", false, false) INITIALIZE_PASS_END(HexagonGenExtract
 

Variables

static cl::opt< unsignedExtractCutoff ("extract-cutoff", cl::init(~0U), cl::Hidden, cl::desc("Cutoff for generating \"extract\"" " instructions"))
 
static cl::opt< boolNoSR0 ("extract-nosr0", cl::init(true), cl::Hidden, cl::desc("No extract instruction with offset 0"))
 
static cl::opt< boolNeedAnd ("extract-needand", cl::init(true), cl::Hidden, cl::desc("Require & in extract patterns"))
 
 hextract
 
Hexagon generate extract instructions
 
Hexagon generate extract false
 

Function Documentation

◆ INITIALIZE_PASS_BEGIN()

INITIALIZE_PASS_BEGIN ( HexagonGenExtract  ,
"hextract"  ,
"Hexagon generate " "\"extract\" instructions"  ,
false  ,
false   
)

Variable Documentation

◆ ExtractCutoff

cl::opt< unsigned > ExtractCutoff("extract-cutoff", cl::init(~0U), cl::Hidden, cl::desc("Cutoff for generating \"extract\"" " instructions")) ( "extract-cutoff"  ,
cl::init(~0U)  ,
cl::Hidden  ,
cl::desc("Cutoff for generating \"extract\"" " instructions")   
)
static

◆ false

Hexagon generate extract false

Definition at line 94 of file HexagonGenExtract.cpp.

◆ hextract

hextract

Definition at line 93 of file HexagonGenExtract.cpp.

◆ instructions

Hexagon generate extract instructions

Definition at line 94 of file HexagonGenExtract.cpp.

◆ NeedAnd

cl::opt< bool > NeedAnd("extract-needand", cl::init(true), cl::Hidden, cl::desc("Require & in extract patterns")) ( "extract-needand"  ,
cl::init(true ,
cl::Hidden  ,
cl::desc("Require & in extract patterns")   
)
static

Referenced by foldSelectICmpAndBinOp().

◆ NoSR0

cl::opt< bool > NoSR0("extract-nosr0", cl::init(true), cl::Hidden, cl::desc("No extract instruction with offset 0")) ( "extract-nosr0"  ,
cl::init(true ,
cl::Hidden  ,
cl::desc("No extract instruction with offset 0")   
)
static