class VFDatabase
Declaration
class VFDatabase { /* full declaration omitted */ };
Description
The Vector Function Database. Helper class used to find the vector functions associated to a scalar CallInst.
Declared at: llvm/include/llvm/Analysis/VectorUtils.h:208
Member Variables
- private const llvm::Module* M
- The Module of the CallInst CI.
- private const llvm::CallInst& CI
- The CallInst instance being queried for scalar to vector mappings.
- private const SmallVector<llvm::VFInfo, 8> ScalarToVectorMappings
- List of vector functions descriptors associated to the call instruction.
Method Overview
- public VFDatabase(llvm::CallInst & CI)
- public static SmallVector<llvm::VFInfo, 8> getMappings(const llvm::CallInst & CI)
- private static void getVFABIMappings(const llvm::CallInst & CI, SmallVectorImpl<llvm::VFInfo> & Mappings)
- public llvm::Function * getVectorizedFunction(const llvm::VFShape & Shape) const
Methods
¶VFDatabase(llvm::CallInst& CI)
VFDatabase(llvm::CallInst& CI)
Description
Constructor, requires a CallInst instance.
Declared at: llvm/include/llvm/Analysis/VectorUtils.h:261
Parameters
- llvm::CallInst& CI
¶static SmallVector<llvm::VFInfo, 8> getMappings(
const llvm::CallInst& CI)
static SmallVector<llvm::VFInfo, 8> getMappings(
const llvm::CallInst& CI)
Description
Retrieve all the VFInfo instances associated to the CallInst CI.
Declared at: llvm/include/llvm/Analysis/VectorUtils.h:249
Parameters
- const llvm::CallInst& CI
¶static void getVFABIMappings(
const llvm::CallInst& CI,
SmallVectorImpl<llvm::VFInfo>& Mappings)
static void getVFABIMappings(
const llvm::CallInst& CI,
SmallVectorImpl<llvm::VFInfo>& Mappings)
Description
Retrieve the scalar-to-vector mappings associated to the rule of a vector Function ABI.
Declared at: llvm/include/llvm/Analysis/VectorUtils.h:219
Parameters
- const llvm::CallInst& CI
- SmallVectorImpl<llvm::VFInfo>& Mappings
¶llvm::Function* getVectorizedFunction(
const llvm::VFShape& Shape) const
llvm::Function* getVectorizedFunction(
const llvm::VFShape& Shape) const
Description
@ { Retrieve the Function with VFShape \p Shape.
Declared at: llvm/include/llvm/Analysis/VectorUtils.h:268
Parameters
- const llvm::VFShape& Shape