LLVM  4.0.0
Functions | Variables
StraightLineStrengthReduce.cpp File Reference
#include "llvm/Analysis/ScalarEvolution.h"
#include "llvm/Analysis/TargetTransformInfo.h"
#include "llvm/Analysis/ValueTracking.h"
#include "llvm/IR/DataLayout.h"
#include "llvm/IR/Dominators.h"
#include "llvm/IR/IRBuilder.h"
#include "llvm/IR/Module.h"
#include "llvm/IR/PatternMatch.h"
#include "llvm/Support/raw_ostream.h"
#include "llvm/Transforms/Scalar.h"
#include "llvm/Transforms/Utils/Local.h"
#include <list>
#include <vector>
Include dependency graph for StraightLineStrengthReduce.cpp:

Go to the source code of this file.

Functions

 INITIALIZE_PASS_BEGIN (StraightLineStrengthReduce,"slsr","Straight line strength reduction", false, false) INITIALIZE_PASS_END(StraightLineStrengthReduce
 
static bool isGEPFoldable (GetElementPtrInst *GEP, const TargetTransformInfo *TTI)
 
static bool isAddFoldable (const SCEV *Base, ConstantInt *Index, Value *Stride, TargetTransformInfo *TTI)
 
static bool hasOnlyOneNonZeroIndex (GetElementPtrInst *GEP)
 
static bool matchesAdd (Value *A, Value *&B, ConstantInt *&C)
 
static bool matchesOr (Value *A, Value *&B, ConstantInt *&C)
 
static void unifyBitWidth (APInt &A, APInt &B)
 

Variables

 slsr
 
Straight line strength reduction
 
Straight line strength false
 

Function Documentation

static bool hasOnlyOneNonZeroIndex ( GetElementPtrInst GEP)
static
INITIALIZE_PASS_BEGIN ( StraightLineStrengthReduce  ,
"slsr"  ,
"Straight line strength reduction ,
false  ,
false   
)
static bool isAddFoldable ( const SCEV Base,
ConstantInt Index,
Value Stride,
TargetTransformInfo TTI 
)
static
static bool isGEPFoldable ( GetElementPtrInst GEP,
const TargetTransformInfo TTI 
)
static
static bool matchesAdd ( Value A,
Value *&  B,
ConstantInt *&  C 
)
static
static bool matchesOr ( Value A,
Value *&  B,
ConstantInt *&  C 
)
static
static void unifyBitWidth ( APInt A,
APInt B 
)
static

Variable Documentation

Straight line strength false

Definition at line 217 of file StraightLineStrengthReduce.cpp.

Straight line strength reduction

Definition at line 217 of file StraightLineStrengthReduce.cpp.

slsr

Definition at line 217 of file StraightLineStrengthReduce.cpp.