LLVM  4.0.0
Macros | Functions
Scalarizer.cpp File Reference
#include "llvm/Transforms/Scalar.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/Analysis/VectorUtils.h"
#include "llvm/IR/IRBuilder.h"
#include "llvm/IR/InstVisitor.h"
#include "llvm/Pass.h"
#include "llvm/Transforms/Utils/BasicBlockUtils.h"
Include dependency graph for Scalarizer.cpp:

Go to the source code of this file.

Macros

#define DEBUG_TYPE   "scalarizer"
 

Functions

 INITIALIZE_PASS_WITH_OPTIONS (Scalarizer,"scalarizer","Scalarize vector operations", false, false) Scatterer
 
static bool isTriviallyScalariable (Intrinsic::ID ID)
 
static FunctiongetScalarIntrinsicDeclaration (Module *M, Intrinsic::ID ID, VectorType *Ty)
 

Macro Definition Documentation

#define DEBUG_TYPE   "scalarizer"

Definition at line 27 of file Scalarizer.cpp.

Function Documentation

static Function* getScalarIntrinsicDeclaration ( Module M,
Intrinsic::ID  ID,
VectorType Ty 
)
static
INITIALIZE_PASS_WITH_OPTIONS ( Scalarizer  ,
"scalarizer"  ,
"Scalarize vector operations ,
false  ,
false   
)

Definition at line 185 of file Scalarizer.cpp.

References assert(), llvm::dyn_cast(), and llvm::Type::getVectorNumElements().

static bool isTriviallyScalariable ( Intrinsic::ID  ID)
static

Definition at line 401 of file Scalarizer.cpp.

References llvm::isTriviallyVectorizable().