LLVM 17.0.0git
|
#include "llvm/IR/VectorBuilder.h"
Public Types | |
enum class | Behavior { ReportAndAbort = 0 , SilentlyReturnNone = 1 } |
Public Member Functions | |
VectorBuilder (IRBuilderBase &Builder, Behavior ErrorHandling=Behavior::ReportAndAbort) | |
Module & | getModule () const |
LLVMContext & | getContext () const |
Value * | getAllTrueMask () |
VectorBuilder & | setMask (Value *NewMask) |
VectorBuilder & | setEVL (Value *NewExplicitVectorLength) |
VectorBuilder & | setStaticVL (unsigned NewFixedVL) |
Value * | createVectorInstruction (unsigned Opcode, Type *ReturnTy, ArrayRef< Value * > VecOpArray, const Twine &Name=Twine()) |
Definition at line 25 of file VectorBuilder.h.
|
strong |
Enumerator | |
---|---|
ReportAndAbort | |
SilentlyReturnNone |
Definition at line 27 of file VectorBuilder.h.
|
inline |
Definition at line 61 of file VectorBuilder.h.
References Builder.
Value * llvm::VectorBuilder::createVectorInstruction | ( | unsigned | Opcode, |
Type * | ReturnTy, | ||
ArrayRef< Value * > | VecOpArray, | ||
const Twine & | Name = Twine() |
||
) |
Definition at line 56 of file VectorBuilder.cpp.
References llvm::SmallVectorImpl< T >::append(), assert(), llvm::ArrayRef< T >::begin(), llvm::IRBuilderBase::CreateCall(), llvm::ArrayRef< T >::end(), llvm::VPIntrinsic::getDeclarationForParams(), llvm::VPIntrinsic::getForOpcode(), llvm::VPIntrinsic::getMaskParamPos(), getModule(), llvm::VPIntrinsic::getVectorLengthParamPos(), Name, llvm::Intrinsic::not_intrinsic, llvm::SmallVectorImpl< T >::resize(), and llvm::ArrayRef< T >::size().
Value * llvm::VectorBuilder::getAllTrueMask | ( | ) |
Definition at line 34 of file VectorBuilder.cpp.
References llvm::VectorType::get(), llvm::Constant::getAllOnesValue(), and llvm::IRBuilderBase::getInt1Ty().
|
inline |
Definition at line 68 of file VectorBuilder.h.
References Builder.
Module & llvm::VectorBuilder::getModule | ( | ) | const |
Definition at line 30 of file VectorBuilder.cpp.
References llvm::IRBuilderBase::GetInsertBlock(), and llvm::BasicBlock::getModule().
Referenced by createVectorInstruction().
|
inline |
Definition at line 77 of file VectorBuilder.h.
|
inline |
Definition at line 73 of file VectorBuilder.h.
|
inline |
Definition at line 81 of file VectorBuilder.h.
References llvm::ElementCount::getFixed().