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)

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)

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)

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

Description

@ { Retrieve the Function with VFShape \p Shape.

Declared at: llvm/include/llvm/Analysis/VectorUtils.h:268

Parameters

const llvm::VFShape& Shape