LLVM: lib/Transforms/Utils/SCCPSolver.cpp File Reference (original) (raw)

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 "sccp"
Functions
static ValueLatticeElement::MergeOptions getMaxWidenStepsOpts ()
Returns MergeOptions with MaxWidenSteps set to MaxNumRangeExtensions.
static ConstantRange llvm::getRange (Value *Op, SCCPSolver &Solver, const SmallPtrSetImpl< Value * > &InsertedValues)
Helper for getting ranges from Solver.
static bool llvm::refineInstruction (SCCPSolver &Solver, const SmallPtrSetImpl< Value * > &InsertedValues, Instruction &Inst)
Try to use Inst's value range from Solver to infer the NUW flag.
static bool llvm::replaceSignedInst (SCCPSolver &Solver, SmallPtrSetImpl< Value * > &InsertedValues, Instruction &Inst)
Try to replace signed instructions with their unsigned equivalent.
static Value * llvm::simplifyInstruction (SCCPSolver &Solver, SmallPtrSetImpl< Value * > &InsertedValues, Instruction &Inst)
Try to use Inst's value range from Solver to simplify it.
static void llvm::inferAttribute (Function *F, unsigned AttrIndex, const ValueLatticeElement &Val)
static ValueLatticeElement getValueFromMetadata (const Instruction *I)

DEBUG_TYPE

#define DEBUG_TYPE "sccp"

getMaxWidenStepsOpts()

getValueFromMetadata()

MaxNumRangeExtensions