Movatterモバイル変換


[0]ホーム

URL:


LLVM 20.0.0git
Macros |Typedefs |Enumerations |Functions |Variables
TargetLibraryInfo.cpp File Reference
#include "llvm/Analysis/TargetLibraryInfo.h"
#include "llvm/ADT/DenseMap.h"
#include "llvm/ADT/SmallString.h"
#include "llvm/IR/Constants.h"
#include "llvm/IR/Module.h"
#include "llvm/InitializePasses.h"
#include "llvm/Support/CommandLine.h"
#include "llvm/TargetParser/Triple.h"
#include "llvm/Analysis/TargetLibraryInfo.def"
#include "llvm/Analysis/VecFuncs.def"

Go to the source code of this file.

Macros

#define TLI_DEFINE_STRING
 
#define TLI_DEFINE_SIG
 
#define TLI_DEFINE_ACCELERATE_VECFUNCS
 
#define TLI_DEFINE_DARWIN_LIBSYSTEM_M_VECFUNCS
 
#define TLI_DEFINE_LIBMVEC_X86_VECFUNCS
 
#define TLI_DEFINE_MASSV_VECFUNCS
 
#define TLI_DEFINE_SVML_VECFUNCS
 
#define TLI_DEFINE_SLEEFGNUABI_VF2_VECFUNCS
 
#define TLI_DEFINE_VECFUNC(SCAL, VEC, VF, VABI_PREFIX)    {SCAL, VEC, VF, /* MASK = */ false, VABI_PREFIX},
 
#define TLI_DEFINE_SLEEFGNUABI_VF4_VECFUNCS
 
#define TLI_DEFINE_VECFUNC(SCAL, VEC, VF, VABI_PREFIX)    {SCAL, VEC, VF, /* MASK = */ false, VABI_PREFIX},
 
#define TLI_DEFINE_SLEEFGNUABI_SCALABLE_VECFUNCS
 
#define TLI_DEFINE_VECFUNC(SCAL, VEC, VF, MASK, VABI_PREFIX)    {SCAL, VEC, VF, MASK, VABI_PREFIX},
 
#define TLI_DEFINE_SLEEFGNUABI_SCALABLE_VECFUNCS_RISCV
 
#define TLI_DEFINE_VECFUNC(SCAL, VEC, VF, MASK, VABI_PREFIX)    {SCAL, VEC, VF, MASK, VABI_PREFIX},
 
#define TLI_DEFINE_ARMPL_VECFUNCS
 
#define TLI_DEFINE_VECFUNC(SCAL, VEC, VF, MASK, VABI_PREFIX)    {SCAL, VEC, VF, MASK, VABI_PREFIX},
 
#define TLI_DEFINE_AMDLIBM_VECFUNCS
 
#define TLI_DEFINE_VECFUNC(SCAL, VEC, VF, MASK, VABI_PREFIX)    {SCAL, VEC, VF, MASK, VABI_PREFIX},
 

Typedefs

typedef std::array<FuncArgTypeID, 8 > FuncProtoTy
 

Enumerations

enum  FuncArgTypeID : char {
  Void = 0,Bool,Int16,Int32,
  Int,IntPlus,Long,IntX,
  Int64,LLong,SizeT,SSizeT,
  Flt,Dbl,LDbl,Floating,
  Ptr,Struct,Ellip,Same
}
 

Functions

staticbool hasSinCosPiStret (constTriple &T)
 
staticbool hasBcmp (constTriple &TT)
 
staticbool isCallingConvCCompatible (CallingConv::IDCC,StringRef TT,FunctionType *FuncTy)
 
static void initializeBase (TargetLibraryInfoImpl &TLI,constTriple &T)
 
static void initializeLibCalls (TargetLibraryInfoImpl &TLI,constTriple &T,ArrayRef<StringLiteral > StandardNames)
 Initialize the set of available library functions based on the specified target triple.
 
static void initialize (TargetLibraryInfoImpl &TLI,constTriple &T,ArrayRef<StringLiteral > StandardNames)
 Initialize the set of available library functions based on the specified target triple.
 
staticStringRef sanitizeFunctionName (StringRef funcName)
 
staticDenseMap<StringRef,LibFuncbuildIndexMap (ArrayRef<StringLiteral > StandardNames)
 
staticbool matchType (FuncArgTypeID ArgTy,constType *Ty,unsigned IntBits,unsigned SizeTBits)
 
staticbool isValidProtoForSizeReturningNew (constFunctionType &FTy,LibFuncF,constModule &M, int SizeTSizeBits)
 
staticbool compareByScalarFnName (constVecDesc &LHS,constVecDesc &RHS)
 
staticbool compareByVectorFnName (constVecDesc &LHS,constVecDesc &RHS)
 
staticbool compareWithScalarFnName (constVecDesc &LHS,StringRef S)
 

Variables

staticcl::opt<TargetLibraryInfoImpl::VectorLibraryClVectorLibrary ("vector-library", cl::Hidden,cl::desc("Vectorfunctions library"), cl::init(TargetLibraryInfoImpl::NoLibrary),cl::values(clEnumValN(TargetLibraryInfoImpl::NoLibrary, "none", "Novectorfunctions library"),clEnumValN(TargetLibraryInfoImpl::Accelerate, "Accelerate", "Accelerate framework"),clEnumValN(TargetLibraryInfoImpl::DarwinLibSystemM, "Darwin_libsystem_m", "Darwin libsystem_m"),clEnumValN(TargetLibraryInfoImpl::LIBMVEC_X86, "LIBMVEC-X86", "GLIBC Vector Math library"),clEnumValN(TargetLibraryInfoImpl::MASSV, "MASSV", "IBM MASSvector library"),clEnumValN(TargetLibraryInfoImpl::SVML, "SVML", "Intel SVML library"),clEnumValN(TargetLibraryInfoImpl::SLEEFGNUABI, "sleefgnuabi", "SIMD Libraryfor Evaluating Elementary Functions"),clEnumValN(TargetLibraryInfoImpl::ArmPL, "ArmPL", "Arm Performance Libraries"),clEnumValN(TargetLibraryInfoImpl::AMDLIBM, "AMDLIBM", "AMDvector math library")))
 
staticconstFuncProtoTy Signatures []
 
staticconstVecDesc VecFuncs_Accelerate []
 
staticconstVecDesc VecFuncs_DarwinLibSystemM []
 
staticconstVecDesc VecFuncs_LIBMVEC_X86 []
 
staticconstVecDesc VecFuncs_MASSV []
 
staticconstVecDesc VecFuncs_SVML []
 
staticconstVecDesc VecFuncs_SLEEFGNUABI_VF2 []
 
staticconstVecDesc VecFuncs_SLEEFGNUABI_VF4 []
 
staticconstVecDesc VecFuncs_SLEEFGNUABI_VFScalable []
 
staticconstVecDesc VecFuncs_SLEEFGNUABI_VFScalableRISCV []
 
staticconstVecDesc VecFuncs_ArmPL []
 
constVecDesc VecFuncs_AMDLIBM []
 

Macro Definition Documentation

◆ TLI_DEFINE_ACCELERATE_VECFUNCS

#define TLI_DEFINE_ACCELERATE_VECFUNCS

◆ TLI_DEFINE_AMDLIBM_VECFUNCS

#define TLI_DEFINE_AMDLIBM_VECFUNCS

◆ TLI_DEFINE_ARMPL_VECFUNCS

#define TLI_DEFINE_ARMPL_VECFUNCS

◆ TLI_DEFINE_DARWIN_LIBSYSTEM_M_VECFUNCS

#define TLI_DEFINE_DARWIN_LIBSYSTEM_M_VECFUNCS

◆ TLI_DEFINE_LIBMVEC_X86_VECFUNCS

#define TLI_DEFINE_LIBMVEC_X86_VECFUNCS

◆ TLI_DEFINE_MASSV_VECFUNCS

#define TLI_DEFINE_MASSV_VECFUNCS

◆ TLI_DEFINE_SIG

#define TLI_DEFINE_SIG

◆ TLI_DEFINE_SLEEFGNUABI_SCALABLE_VECFUNCS

#define TLI_DEFINE_SLEEFGNUABI_SCALABLE_VECFUNCS

◆ TLI_DEFINE_SLEEFGNUABI_SCALABLE_VECFUNCS_RISCV

#define TLI_DEFINE_SLEEFGNUABI_SCALABLE_VECFUNCS_RISCV

◆ TLI_DEFINE_SLEEFGNUABI_VF2_VECFUNCS

#define TLI_DEFINE_SLEEFGNUABI_VF2_VECFUNCS

◆ TLI_DEFINE_SLEEFGNUABI_VF4_VECFUNCS

#define TLI_DEFINE_SLEEFGNUABI_VF4_VECFUNCS

◆ TLI_DEFINE_STRING

#define TLI_DEFINE_STRING

◆ TLI_DEFINE_SVML_VECFUNCS

#define TLI_DEFINE_SVML_VECFUNCS

◆ TLI_DEFINE_VECFUNC[1/6]

#define TLI_DEFINE_VECFUNC( SCAL,
 VEC,
 VF,
 MASK,
 VABI_PREFIX 
)    {SCAL, VEC, VF, MASK, VABI_PREFIX},

◆ TLI_DEFINE_VECFUNC[2/6]

#define TLI_DEFINE_VECFUNC( SCAL,
 VEC,
 VF,
 MASK,
 VABI_PREFIX 
)    {SCAL, VEC, VF, MASK, VABI_PREFIX},

◆ TLI_DEFINE_VECFUNC[3/6]

#define TLI_DEFINE_VECFUNC( SCAL,
 VEC,
 VF,
 MASK,
 VABI_PREFIX 
)    {SCAL, VEC, VF, MASK, VABI_PREFIX},

◆ TLI_DEFINE_VECFUNC[4/6]

#define TLI_DEFINE_VECFUNC( SCAL,
 VEC,
 VF,
 MASK,
 VABI_PREFIX 
)    {SCAL, VEC, VF, MASK, VABI_PREFIX},

◆ TLI_DEFINE_VECFUNC[5/6]

#define TLI_DEFINE_VECFUNC( SCAL,
 VEC,
 VF,
 VABI_PREFIX 
)    {SCAL, VEC, VF, /* MASK = */ false, VABI_PREFIX},

◆ TLI_DEFINE_VECFUNC[6/6]

#define TLI_DEFINE_VECFUNC( SCAL,
 VEC,
 VF,
 VABI_PREFIX 
)    {SCAL, VEC, VF, /* MASK = */ false, VABI_PREFIX},

Typedef Documentation

◆ FuncProtoTy

typedef std::array<FuncArgTypeID, 8>FuncProtoTy

Definition at line83 of fileTargetLibraryInfo.cpp.

Enumeration Type Documentation

◆ FuncArgTypeID

enumFuncArgTypeID :char
Enumerator
Void 
Bool 
Int16 
Int32 
Int 
IntPlus 
Long 
IntX 
Int64 
LLong 
SizeT 
SSizeT 
Flt 
Dbl 
LDbl 
Floating 
Ptr 
Struct 
Ellip 
Same 

Definition at line60 of fileTargetLibraryInfo.cpp.

Function Documentation

◆ buildIndexMap()

staticDenseMap<StringRef,LibFunc > buildIndexMap(ArrayRef<StringLiteralStandardNames)
static

Definition at line995 of fileTargetLibraryInfo.cpp.

ReferencesIdx,llvm::NumLibFuncs, andllvm::DenseMapBase< DerivedT, KeyT, ValueT, KeyInfoT, BucketT >::reserve().

Referenced byllvm::TargetLibraryInfoImpl::getLibFunc().

◆ compareByScalarFnName()

staticbool compareByScalarFnName(constVecDescLHS,
constVecDescRHS 
)
static

Definition at line1256 of fileTargetLibraryInfo.cpp.

ReferencesLHS, andRHS.

Referenced byllvm::TargetLibraryInfoImpl::addVectorizableFunctions().

◆ compareByVectorFnName()

staticbool compareByVectorFnName(constVecDescLHS,
constVecDescRHS 
)
static

Definition at line1260 of fileTargetLibraryInfo.cpp.

ReferencesLHS, andRHS.

Referenced byllvm::TargetLibraryInfoImpl::addVectorizableFunctions().

◆ compareWithScalarFnName()

staticbool compareWithScalarFnName(constVecDescLHS,
StringRef S 
)
static

Definition at line1264 of fileTargetLibraryInfo.cpp.

ReferencesLHS.

Referenced byllvm::TargetLibraryInfoImpl::getVectorMappingInfo(),llvm::TargetLibraryInfoImpl::getWidestVF(), andllvm::TargetLibraryInfoImpl::isFunctionVectorizable().

◆ hasBcmp()

staticbool hasBcmp(constTripleTT)
static

Definition at line111 of fileTargetLibraryInfo.cpp.

Referenced byinitializeLibCalls().

◆ hasSinCosPiStret()

staticbool hasSinCosPiStret(constTripleT)
static

Definition at line93 of fileTargetLibraryInfo.cpp.

Referencesllvm::Triple::x86.

Referenced byinitializeLibCalls().

◆ initialize()

static void initialize(TargetLibraryInfoImplTLI,
constTripleT,
ArrayRef<StringLiteralStandardNames 
)
static

Initialize the set of available library functions based on the specified target triple.

This should be carefully written so that a missing target triple gets a sane set of defaults.

Definition at line917 of fileTargetLibraryInfo.cpp.

ReferencesinitializeBase(), andinitializeLibCalls().

Referenced byllvm::OProfileWrapper::op_close_agent(),llvm::OProfileWrapper::op_major_version(),llvm::OProfileWrapper::op_minor_version(),llvm::OProfileWrapper::op_open_agent(),llvm::OProfileWrapper::op_unload_native_code(),llvm::OProfileWrapper::op_write_debug_line_info(),llvm::OProfileWrapper::op_write_native_code(), andllvm::TargetLibraryInfoImpl::TargetLibraryInfoImpl().

◆ initializeBase()

static void initializeBase(TargetLibraryInfoImplTLI,
constTripleT 
)
static

Definition at line164 of fileTargetLibraryInfo.cpp.

Referencesllvm::TargetLibraryInfo::initExtensionsForTriple(),llvm::TargetLibraryInfoImpl::setIntSize(),llvm::TargetLibraryInfoImpl::setShouldExtI32Param(),llvm::TargetLibraryInfoImpl::setShouldExtI32Return(),llvm::TargetLibraryInfoImpl::setShouldSignExtI32Param(), andllvm::TargetLibraryInfoImpl::setShouldSignExtI32Return().

Referenced byinitialize(), andllvm::TargetLibraryInfoImpl::TargetLibraryInfoImpl().

◆ initializeLibCalls()

static void initializeLibCalls(TargetLibraryInfoImplTLI,
constTripleT,
ArrayRef<StringLiteralStandardNames 
)
static

Initialize the set of available library functions based on the specified target triple.

This should be carefully written so that a missing target triple gets a sane set of defaults.

Definition at line184 of fileTargetLibraryInfo.cpp.

Referencesllvm::Triple::aarch64,llvm::TargetLibraryInfoImpl::addVectorizableFunctionsFromVecLib(),llvm::Triple::arm,ClVectorLibrary,llvm::Triple::Darwin,llvm::TargetLibraryInfoImpl::disableAllFunctions(),llvm::Triple::Emscripten,llvm::Triple::FreeBSD,hasBcmp(),hasSinCosPiStret(),llvm::Triple::IOS,llvm::Triple::Linux,llvm::Triple::MacOSX,llvm::TargetLibraryInfoImpl::setAvailable(),llvm::TargetLibraryInfoImpl::setAvailableWithName(),llvm::TargetLibraryInfoImpl::setUnavailable(),llvm::Triple::tce,llvm::Triple::TvOS,llvm::Version,llvm::Triple::WatchOS,llvm::Triple::x86,llvm::Triple::x86_64,llvm::Triple::xcore, andllvm::Triple::XROS.

Referenced byinitialize().

◆ isCallingConvCCompatible()

staticbool isCallingConvCCompatible(CallingConv::ID CC,
StringRef TT,
FunctionTypeFuncTy 
)
static

Definition at line121 of fileTargetLibraryInfo.cpp.

Referencesllvm::CallingConv::ARM_AAPCS,llvm::CallingConv::ARM_AAPCS_VFP,llvm::CallingConv::ARM_APCS,llvm::CallingConv::C, andCC.

◆ isValidProtoForSizeReturningNew()

staticbool isValidProtoForSizeReturningNew(constFunctionTypeFTy,
LibFunc F,
constModuleM,
int SizeTSizeBits 
)
static

Definition at line1068 of fileTargetLibraryInfo.cpp.

ReferencesF,llvm::StructType::get(),llvm::PointerType::get(), andllvm::Type::getIntNTy().

◆ matchType()

staticbool matchType(FuncArgTypeID ArgTy,
constTypeTy,
unsigned IntBits,
unsigned SizeTBits 
)
static

Definition at line1021 of fileTargetLibraryInfo.cpp.

ReferencesBool,Dbl,Floating,Flt,llvm::Type::getPrimitiveSizeInBits(),Int,Int16,Int32,Int64,IntPlus,IntX,llvm::Type::isDoubleTy(),llvm::Type::isFloatingPointTy(),llvm::Type::isFloatTy(),llvm::Type::isIntegerTy(),llvm::Type::isPointerTy(),llvm::Type::isStructTy(),llvm::Type::isVoidTy(),LDbl,LLong,llvm_unreachable,Long,Ptr,SizeT,SSizeT,Struct, andVoid.

◆ sanitizeFunctionName()

staticStringRef sanitizeFunctionName(StringRef funcName)
static

Definition at line983 of fileTargetLibraryInfo.cpp.

Referencesllvm::StringRef::contains(),llvm::GlobalValue::dropLLVMManglingEscape(), andllvm::StringRef::empty().

Referenced byllvm::TargetLibraryInfoImpl::getLibFunc(),llvm::TargetLibraryInfoImpl::getVectorMappingInfo(),llvm::TargetLibraryInfoImpl::getWidestVF(), andllvm::TargetLibraryInfoImpl::isFunctionVectorizable().

Variable Documentation

◆ ClVectorLibrary

cl::opt<TargetLibraryInfoImpl::VectorLibrary > ClVectorLibrary("vector-library", cl::Hidden,cl::desc("Vectorfunctions library"), cl::init(TargetLibraryInfoImpl::NoLibrary),cl::values(clEnumValN(TargetLibraryInfoImpl::NoLibrary, "none", "Novectorfunctions library"),clEnumValN(TargetLibraryInfoImpl::Accelerate, "Accelerate", "Accelerate framework"),clEnumValN(TargetLibraryInfoImpl::DarwinLibSystemM, "Darwin_libsystem_m", "Darwin libsystem_m"),clEnumValN(TargetLibraryInfoImpl::LIBMVEC_X86, "LIBMVEC-X86", "GLIBC Vector Math library"),clEnumValN(TargetLibraryInfoImpl::MASSV, "MASSV", "IBM MASSvector library"),clEnumValN(TargetLibraryInfoImpl::SVML, "SVML", "Intel SVML library"),clEnumValN(TargetLibraryInfoImpl::SLEEFGNUABI, "sleefgnuabi", "SIMD Libraryfor Evaluating Elementary Functions"),clEnumValN(TargetLibraryInfoImpl::ArmPL, "ArmPL", "Arm Performance Libraries"),clEnumValN(TargetLibraryInfoImpl::AMDLIBM, "AMDLIBM", "AMDvector math library")))("vector-library" ,
cl::Hidden ,
cl::desc("Vectorfunctions library") ,
cl::init(TargetLibraryInfoImpl::NoLibrary) ,
cl::values(clEnumValN(TargetLibraryInfoImpl::NoLibrary, "none", "Novectorfunctions library"),clEnumValN(TargetLibraryInfoImpl::Accelerate, "Accelerate", "Accelerate framework"),clEnumValN(TargetLibraryInfoImpl::DarwinLibSystemM, "Darwin_libsystem_m", "Darwin libsystem_m"),clEnumValN(TargetLibraryInfoImpl::LIBMVEC_X86, "LIBMVEC-X86", "GLIBC Vector Math library"),clEnumValN(TargetLibraryInfoImpl::MASSV, "MASSV", "IBM MASSvector library"),clEnumValN(TargetLibraryInfoImpl::SVML, "SVML", "Intel SVML library"),clEnumValN(TargetLibraryInfoImpl::SLEEFGNUABI, "sleefgnuabi", "SIMD Libraryfor Evaluating Elementary Functions"),clEnumValN(TargetLibraryInfoImpl::ArmPL, "ArmPL", "Arm Performance Libraries"),clEnumValN(TargetLibraryInfoImpl::AMDLIBM, "AMDLIBM", "AMDvector math library"))  
)
static

Referenced byinitializeLibCalls().

◆ Signatures

constFuncProtoTy Signatures[]
static
Initial value:
= {
#define TLI_DEFINE_SIG
}

Definition at line85 of fileTargetLibraryInfo.cpp.

Referenced byconstructEntryMetadata(),emitEntryMD(),llvm::BalancedPartitioning::moveGain(), andtranslateMetadata().

◆ VecFuncs_Accelerate

constVecDesc VecFuncs_Accelerate[]
static
Initial value:
= {
#define TLI_DEFINE_ACCELERATE_VECFUNCS
}

Definition at line1276 of fileTargetLibraryInfo.cpp.

Referenced byllvm::TargetLibraryInfoImpl::addVectorizableFunctionsFromVecLib().

◆ VecFuncs_AMDLIBM

constVecDesc VecFuncs_AMDLIBM[]
Initial value:
= {
#define TLI_DEFINE_AMDLIBM_VECFUNCS
#define TLI_DEFINE_VECFUNC(SCAL, VEC, VF, MASK, VABI_PREFIX)
}

Definition at line1344 of fileTargetLibraryInfo.cpp.

Referenced byllvm::TargetLibraryInfoImpl::addVectorizableFunctionsFromVecLib().

◆ VecFuncs_ArmPL

constVecDesc VecFuncs_ArmPL[]
static
Initial value:
= {
#define TLI_DEFINE_ARMPL_VECFUNCS
#define TLI_DEFINE_VECFUNC(SCAL, VEC, VF, MASK, VABI_PREFIX)
}

Definition at line1336 of fileTargetLibraryInfo.cpp.

Referenced byllvm::TargetLibraryInfoImpl::addVectorizableFunctionsFromVecLib().

◆ VecFuncs_DarwinLibSystemM

constVecDesc VecFuncs_DarwinLibSystemM[]
static
Initial value:
= {
#define TLI_DEFINE_DARWIN_LIBSYSTEM_M_VECFUNCS
}

Definition at line1282 of fileTargetLibraryInfo.cpp.

Referenced byllvm::TargetLibraryInfoImpl::addVectorizableFunctionsFromVecLib().

◆ VecFuncs_LIBMVEC_X86

constVecDesc VecFuncs_LIBMVEC_X86[]
static
Initial value:
= {
#define TLI_DEFINE_LIBMVEC_X86_VECFUNCS
}

Definition at line1288 of fileTargetLibraryInfo.cpp.

Referenced byllvm::TargetLibraryInfoImpl::addVectorizableFunctionsFromVecLib().

◆ VecFuncs_MASSV

constVecDesc VecFuncs_MASSV[]
static
Initial value:
= {
#define TLI_DEFINE_MASSV_VECFUNCS
}

Definition at line1294 of fileTargetLibraryInfo.cpp.

Referenced byllvm::TargetLibraryInfoImpl::addVectorizableFunctionsFromVecLib().

◆ VecFuncs_SLEEFGNUABI_VF2

constVecDesc VecFuncs_SLEEFGNUABI_VF2[]
static
Initial value:
= {
#define TLI_DEFINE_SLEEFGNUABI_VF2_VECFUNCS
#define TLI_DEFINE_VECFUNC(SCAL, VEC, VF, VABI_PREFIX)
}

Definition at line1306 of fileTargetLibraryInfo.cpp.

Referenced byllvm::TargetLibraryInfoImpl::addVectorizableFunctionsFromVecLib().

◆ VecFuncs_SLEEFGNUABI_VF4

constVecDesc VecFuncs_SLEEFGNUABI_VF4[]
static
Initial value:
= {
#define TLI_DEFINE_SLEEFGNUABI_VF4_VECFUNCS
#define TLI_DEFINE_VECFUNC(SCAL, VEC, VF, VABI_PREFIX)
}

Definition at line1313 of fileTargetLibraryInfo.cpp.

Referenced byllvm::TargetLibraryInfoImpl::addVectorizableFunctionsFromVecLib().

◆ VecFuncs_SLEEFGNUABI_VFScalable

constVecDesc VecFuncs_SLEEFGNUABI_VFScalable[]
static
Initial value:
= {
#define TLI_DEFINE_SLEEFGNUABI_SCALABLE_VECFUNCS
#define TLI_DEFINE_VECFUNC(SCAL, VEC, VF, MASK, VABI_PREFIX)
}

Definition at line1320 of fileTargetLibraryInfo.cpp.

Referenced byllvm::TargetLibraryInfoImpl::addVectorizableFunctionsFromVecLib().

◆ VecFuncs_SLEEFGNUABI_VFScalableRISCV

constVecDesc VecFuncs_SLEEFGNUABI_VFScalableRISCV[]
static
Initial value:
= {
#define TLI_DEFINE_SLEEFGNUABI_SCALABLE_VECFUNCS_RISCV
#define TLI_DEFINE_VECFUNC(SCAL, VEC, VF, MASK, VABI_PREFIX)
}

Definition at line1328 of fileTargetLibraryInfo.cpp.

Referenced byllvm::TargetLibraryInfoImpl::addVectorizableFunctionsFromVecLib().

◆ VecFuncs_SVML

constVecDesc VecFuncs_SVML[]
static
Initial value:
= {
#define TLI_DEFINE_SVML_VECFUNCS
}

Definition at line1300 of fileTargetLibraryInfo.cpp.

Referenced byllvm::TargetLibraryInfoImpl::addVectorizableFunctionsFromVecLib().


Generated on Sun Jul 20 2025 15:02:54 for LLVM by doxygen 1.9.6
[8]ページ先頭

©2009-2025 Movatter.jp