LLVM: lib/Transforms/Scalar/StraightLineStrengthReduce.cpp File Reference (original) (raw)

Go to the source code of this file.

Functions
DEBUG_COUNTER (StraightLineStrengthReduceCounter, "slsr-counter", "Controls whether rewriteCandidateWithBasis is executed.")
INITIALIZE_PASS_BEGIN (StraightLineStrengthReduceLegacyPass, "slsr", "Straight line strength reduction", false, false) INITIALIZE_PASS_END(StraightLineStrengthReduceLegacyPass
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)

DEBUG_COUNTER()

DEBUG_COUNTER ( StraightLineStrengthReduceCounter ,
"slsr-counter" ,
"Controls whether rewriteCandidateWithBasis is executed." )

hasOnlyOneNonZeroIndex()

INITIALIZE_PASS_BEGIN()

INITIALIZE_PASS_BEGIN ( StraightLineStrengthReduceLegacyPass ,
"slsr" ,
"Straight line strength reduction" ,
false ,
false )

isAddFoldable()

isGEPFoldable()

matchesAdd()

matchesOr()

unifyBitWidth()

false

Straight line strength false

reduction

Straight line strength reduction

slsr

UnknownAddressSpace