LLVM  6.0.0svn
Functions
VectorUtils.cpp File Reference
#include "llvm/Analysis/VectorUtils.h"
#include "llvm/ADT/EquivalenceClasses.h"
#include "llvm/Analysis/DemandedBits.h"
#include "llvm/Analysis/LoopInfo.h"
#include "llvm/Analysis/ScalarEvolution.h"
#include "llvm/Analysis/ScalarEvolutionExpressions.h"
#include "llvm/Analysis/TargetTransformInfo.h"
#include "llvm/Analysis/ValueTracking.h"
#include "llvm/IR/Constants.h"
#include "llvm/IR/GetElementPtrTypeIterator.h"
#include "llvm/IR/IRBuilder.h"
#include "llvm/IR/PatternMatch.h"
#include "llvm/IR/Value.h"
Include dependency graph for VectorUtils.cpp:

Go to the source code of this file.

Functions

static ValueconcatenateTwoVectors (IRBuilder<> &Builder, Value *V1, Value *V2)
 A helper function for concatenating vectors. More...
 

Function Documentation

◆ concatenateTwoVectors()

static Value* concatenateTwoVectors ( IRBuilder<> &  Builder,
Value V1,
Value V2 
)
static

A helper function for concatenating vectors.

This function concatenates two vectors having the same element type. If the second vector has fewer elements than the first, it is padded with undefs.

Definition at line 529 of file VectorUtils.cpp.

References assert(), llvm::createSequentialMask(), llvm::IRBuilder< T, Inserter >::CreateShuffleVector(), llvm::dyn_cast(), llvm::UndefValue::get(), llvm::SequentialType::getNumElements(), llvm::Type::getScalarType(), llvm::Value::getType(), and llvm::BitmaskEnumDetail::Mask().

Referenced by llvm::concatenateVectors().