LLVM 22.0.0git
HexagonVectorLoopCarriedReuse.cpp File Reference
#include "HexagonVectorLoopCarriedReuse.h"
#include "Hexagon.h"
#include "llvm/ADT/SetVector.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/ADT/Statistic.h"
#include "llvm/Analysis/LoopInfo.h"
#include "llvm/Analysis/LoopPass.h"
#include "llvm/IR/BasicBlock.h"
#include "llvm/IR/DerivedTypes.h"
#include "llvm/IR/IRBuilder.h"
#include "llvm/IR/Instruction.h"
#include "llvm/IR/Instructions.h"
#include "llvm/IR/IntrinsicInst.h"
#include "llvm/IR/Intrinsics.h"
#include "llvm/IR/IntrinsicsHexagon.h"
#include "llvm/IR/Use.h"
#include "llvm/IR/Value.h"
#include "llvm/InitializePasses.h"
#include "llvm/Pass.h"
#include "llvm/Support/Casting.h"
#include "llvm/Support/CommandLine.h"
#include "llvm/Support/Compiler.h"
#include "llvm/Support/Debug.h"
#include "llvm/Support/raw_ostream.h"
#include "llvm/Transforms/Scalar.h"
#include "llvm/Transforms/Utils.h"
#include <cassert>
#include <map>
#include <memory>
#include <set>

Go to the source code of this file.

Macros

#define DEBUG_TYPE   "hexagon-vlcr"

Functions

 STATISTIC (HexagonNumVectorLoopCarriedReuse, "Number of values that were reused from a previous iteration.")
 INITIALIZE_PASS_BEGIN (HexagonVectorLoopCarriedReuseLegacyPass, "hexagon-vlcr", "Hexagon-specific predictive commoning for HVX vectors", false, false) INITIALIZE_PASS_END(HexagonVectorLoopCarriedReuseLegacyPass

Variables

static cl::opt< int > HexagonVLCRIterationLim ("hexagon-vlcr-iteration-lim", cl::Hidden, cl::desc("Maximum distance of loop carried dependences that are handled"), cl::init(2))
hexagon vlcr
hexagon Hexagon specific predictive commoning for HVX vectors
hexagon Hexagon specific predictive commoning for HVX false

Macro Definition Documentation

◆ DEBUG_TYPE

#define DEBUG_TYPE   "hexagon-vlcr"

Definition at line 49 of file HexagonVectorLoopCarriedReuse.cpp.

Function Documentation

◆ INITIALIZE_PASS_BEGIN()

INITIALIZE_PASS_BEGIN ( HexagonVectorLoopCarriedReuseLegacyPass ,
"hexagon-vlcr" ,
"Hexagon-specific predictive commoning for HVX vectors" ,
false ,
false  )

◆ STATISTIC()

STATISTIC ( HexagonNumVectorLoopCarriedReuse ,
"Number of values that were reused from a previous iteration."  )

Variable Documentation

◆ false

hexagon Hexagon specific predictive commoning for HVX false

Definition at line 210 of file HexagonVectorLoopCarriedReuse.cpp.

◆ HexagonVLCRIterationLim

cl::opt< int > HexagonVLCRIterationLim("hexagon-vlcr-iteration-lim", cl::Hidden, cl::desc("Maximum distance of loop carried dependences that are handled"), cl::init(2)) ( "hexagon-vlcr-iteration-lim" ,
cl::Hidden ,
cl::desc("Maximum distance of loop carried dependences that are handled") ,
cl::init(2)  )
static

◆ vectors

hexagon Hexagon specific predictive commoning for HVX vectors

Definition at line 209 of file HexagonVectorLoopCarriedReuse.cpp.

◆ vlcr

hexagon vlcr

Definition at line 208 of file HexagonVectorLoopCarriedReuse.cpp.