LLVM  3.7.0
Namespaces | Functions
VectorUtils.h File Reference
#include "llvm/Analysis/TargetLibraryInfo.h"
#include "llvm/IR/IntrinsicInst.h"
#include "llvm/IR/Intrinsics.h"
Include dependency graph for VectorUtils.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

 llvm
 Compute iterated dominance frontiers using a linear time algorithm.
 

Functions

bool llvm::isTriviallyVectorizable (Intrinsic::ID ID)
 Identify if the intrinsic is trivially vectorizable. More...
 
bool llvm::hasVectorInstrinsicScalarOpd (Intrinsic::ID ID, unsigned ScalarOpdIdx)
 Identifies if the intrinsic has a scalar operand. More...
 
Intrinsic::ID llvm::checkUnaryFloatSignature (const CallInst &I, Intrinsic::ID ValidIntrinsicID)
 Identify if call has a unary float signature It returns input intrinsic ID if call has a single argument, argument type and call instruction type should be floating point type and call should only reads memory. More...
 
Intrinsic::ID llvm::checkBinaryFloatSignature (const CallInst &I, Intrinsic::ID ValidIntrinsicID)
 Identify if call has a binary float signature It returns input intrinsic ID if call has two arguments, arguments type and call instruction type should be floating point type and call should only reads memory. More...
 
Intrinsic::ID llvm::getIntrinsicIDForCall (CallInst *CI, const TargetLibraryInfo *TLI)
 Returns intrinsic ID for call. More...
 
unsigned llvm::getGEPInductionOperand (const GetElementPtrInst *Gep)
 Find the operand of the GEP that should be checked for consecutive stores. More...
 
Value * llvm::stripGetElementPtr (Value *Ptr, ScalarEvolution *SE, Loop *Lp)
 If the argument is a GEP, then returns the operand identified by getGEPInductionOperand. More...
 
Value * llvm::getUniqueCastUse (Value *Ptr, Loop *Lp, Type *Ty)
 If a value has only one user that is a CastInst, return it. More...
 
Value * llvm::getStrideFromPointer (Value *Ptr, ScalarEvolution *SE, Loop *Lp)
 Get the stride of a pointer access in a loop. More...
 
Value * llvm::findScalarElement (Value *V, unsigned EltNo)
 Given a vector and an element number, see if the scalar value is already around as a register, for example if it were inserted then extracted from the vector. More...