LLVM 20.0.0git
Namespaces | Macros | Functions | Variables
HexagonVectorCombine.cpp File Reference
#include "llvm/ADT/APInt.h"
#include "llvm/ADT/ArrayRef.h"
#include "llvm/ADT/DenseMap.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/Analysis/AliasAnalysis.h"
#include "llvm/Analysis/AssumptionCache.h"
#include "llvm/Analysis/InstSimplifyFolder.h"
#include "llvm/Analysis/InstructionSimplify.h"
#include "llvm/Analysis/ScalarEvolutionExpressions.h"
#include "llvm/Analysis/TargetLibraryInfo.h"
#include "llvm/Analysis/ValueTracking.h"
#include "llvm/Analysis/VectorUtils.h"
#include "llvm/CodeGen/TargetPassConfig.h"
#include "llvm/CodeGen/ValueTypes.h"
#include "llvm/IR/Dominators.h"
#include "llvm/IR/IRBuilder.h"
#include "llvm/IR/IntrinsicInst.h"
#include "llvm/IR/Intrinsics.h"
#include "llvm/IR/IntrinsicsHexagon.h"
#include "llvm/IR/Metadata.h"
#include "llvm/IR/PatternMatch.h"
#include "llvm/InitializePasses.h"
#include "llvm/Pass.h"
#include "llvm/Support/CommandLine.h"
#include "llvm/Support/KnownBits.h"
#include "llvm/Support/MathExtras.h"
#include "llvm/Support/raw_ostream.h"
#include "llvm/Target/TargetMachine.h"
#include "llvm/Transforms/Utils/Local.h"
#include "HexagonSubtarget.h"
#include "HexagonTargetMachine.h"
#include <algorithm>
#include <deque>
#include <map>
#include <optional>
#include <set>
#include <utility>
#include <vector>

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   "hexagon-vc"
 
#define CallBuilder(B, F)
 

Functions

void llvm::initializeHexagonVectorCombineLegacyPass (PassRegistry &)
 
FunctionPassllvm::createHexagonVectorCombineLegacyPass ()
 
 INITIALIZE_PASS_BEGIN (HexagonVectorCombineLegacy, DEBUG_TYPE, "Hexagon Vector Combine", false, false) INITIALIZE_PASS_END(HexagonVectorCombineLegacy
 

Variables

 DEBUG_TYPE
 
Hexagon Vector Combine
 
Hexagon Vector false
 

Macro Definition Documentation

◆ CallBuilder

#define CallBuilder (   B,
  F 
)
Value:
[&](auto &B_) { \
Value *V = B_.F; \
if (auto *I = dyn_cast<Instruction>(V)) \
B_.ToErase.push_back(I); \
return V; \
}(B)
static GCRegistry::Add< OcamlGC > B("ocaml", "ocaml 3.10-compatible GC")
#define I(x, y, z)
Definition: MD5.cpp:58
LLVM Value Representation.
Definition: Value.h:74

◆ DEBUG_TYPE

#define DEBUG_TYPE   "hexagon-vc"

Definition at line 57 of file HexagonVectorCombine.cpp.

Function Documentation

◆ INITIALIZE_PASS_BEGIN()

INITIALIZE_PASS_BEGIN ( HexagonVectorCombineLegacy  ,
DEBUG_TYPE  ,
"Hexagon Vector Combine"  ,
false  ,
false   
)

Variable Documentation

◆ Combine

Hexagon Vector Combine

Definition at line 2987 of file HexagonVectorCombine.cpp.

◆ DEBUG_TYPE

DEBUG_TYPE

Definition at line 2986 of file HexagonVectorCombine.cpp.

◆ false

Hexagon Vector false

Definition at line 2987 of file HexagonVectorCombine.cpp.