LLVM: lib/Analysis/TargetLibraryInfo.cpp File Reference (original) (raw)
Go to the source code of this file.
| Variables | |
|---|---|
| static const VecDesc | VecFuncs_Accelerate [] |
| static const VecDesc | VecFuncs_DarwinLibSystemM [] |
| static const VecDesc | VecFuncs_LIBMVEC_X86 [] |
| static const VecDesc | VecFuncs_LIBMVEC_AARCH64 [] |
| static const VecDesc | VecFuncs_MASSV [] |
| static const VecDesc | VecFuncs_SVML [] |
| static const VecDesc | VecFuncs_SLEEFGNUABI_VF2 [] |
| static const VecDesc | VecFuncs_SLEEFGNUABI_VF4 [] |
| static const VecDesc | VecFuncs_SLEEFGNUABI_VFScalable [] |
| static const VecDesc | VecFuncs_SLEEFGNUABI_VFScalableRISCV [] |
| static const VecDesc | VecFuncs_ArmPL [] |
| const VecDesc | VecFuncs_AMDLIBM [] |
◆ GET_TARGET_LIBRARY_INFO_SIGNATURE_TABLE
#define GET_TARGET_LIBRARY_INFO_SIGNATURE_TABLE
◆ GET_TARGET_LIBRARY_INFO_STRING_TABLE
#define GET_TARGET_LIBRARY_INFO_STRING_TABLE
◆ 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_AARCH64_VECFUNCS
#define TLI_DEFINE_LIBMVEC_AARCH64_VECFUNCS
◆ TLI_DEFINE_LIBMVEC_X86_VECFUNCS
#define TLI_DEFINE_LIBMVEC_X86_VECFUNCS
◆ TLI_DEFINE_MASSV_VECFUNCS
#define TLI_DEFINE_MASSV_VECFUNCS
◆ 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_SVML_VECFUNCS
#define TLI_DEFINE_SVML_VECFUNCS
◆ TLI_DEFINE_VECFUNC [1/7]
| #define TLI_DEFINE_VECFUNC | ( | SCAL, |
|---|---|---|
| VEC, | ||
| VF, | ||
| MASK, | ||
| VABI_PREFIX ) |
Value:
{SCAL, VEC, VF, MASK, VABI_PREFIX, std::nullopt},
◆ TLI_DEFINE_VECFUNC [2/7]
| #define TLI_DEFINE_VECFUNC | ( | SCAL, |
|---|---|---|
| VEC, | ||
| VF, | ||
| MASK, | ||
| VABI_PREFIX ) |
Value:
{SCAL, VEC, VF, MASK, VABI_PREFIX, std::nullopt},
◆ TLI_DEFINE_VECFUNC [3/7]
| #define TLI_DEFINE_VECFUNC | ( | SCAL, |
|---|---|---|
| VEC, | ||
| VF, | ||
| MASK, | ||
| VABI_PREFIX ) |
Value:
{SCAL, VEC, VF, MASK, VABI_PREFIX, std::nullopt},
◆ TLI_DEFINE_VECFUNC [4/7]
| #define TLI_DEFINE_VECFUNC | ( | SCAL, |
|---|---|---|
| VEC, | ||
| VF, | ||
| MASK, | ||
| VABI_PREFIX, | ||
| CC ) |
Value:
{SCAL, VEC, VF, MASK, VABI_PREFIX, CC},
◆ TLI_DEFINE_VECFUNC [5/7]
| #define TLI_DEFINE_VECFUNC | ( | SCAL, |
|---|---|---|
| VEC, | ||
| VF, | ||
| MASK, | ||
| VABI_PREFIX, | ||
| CC ) |
Value:
{SCAL, VEC, VF, MASK, VABI_PREFIX, CC},
◆ TLI_DEFINE_VECFUNC [6/7]
| #define TLI_DEFINE_VECFUNC | ( | SCAL, |
|---|---|---|
| VEC, | ||
| VF, | ||
| VABI_PREFIX ) |
Value:
{SCAL, VEC, VF, false, VABI_PREFIX, std::nullopt},
◆ TLI_DEFINE_VECFUNC [7/7]
| #define TLI_DEFINE_VECFUNC | ( | SCAL, |
|---|---|---|
| VEC, | ||
| VF, | ||
| VABI_PREFIX ) |
Value:
{SCAL, VEC, VF, false, VABI_PREFIX, std::nullopt},
◆ buildIndexMap()
◆ compareByScalarFnName()
◆ compareByVectorFnName()
◆ compareWithScalarFnName()
◆ hasBcmp()
◆ hasSinCosPiStret()
◆ initialize()
◆ initializeBase()
◆ initializeLibCalls()
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 line 129 of file TargetLibraryInfo.cpp.
References llvm::Triple::aarch64, llvm::TargetLibraryInfoImpl::addVectorizableFunctionsFromVecLib(), llvm::Triple::arm, 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(), T, llvm::Triple::tce, llvm::Triple::TvOS, llvm::Triple::WatchOS, llvm::Triple::x86, llvm::Triple::x86_64, llvm::Triple::xcore, and llvm::Triple::XROS.
Referenced by initialize().