|
LLVM
3.7.0
|
Provides information about what library functions are available for the current target. More...
#include <TargetLibraryInfo.h>
Public Member Functions | |
| TargetLibraryInfo (const TargetLibraryInfoImpl &Impl) | |
| TargetLibraryInfo (const TargetLibraryInfo &TLI) | |
| TargetLibraryInfo (TargetLibraryInfo &&TLI) | |
| TargetLibraryInfo & | operator= (const TargetLibraryInfo &TLI) |
| TargetLibraryInfo & | operator= (TargetLibraryInfo &&TLI) |
| bool | getLibFunc (StringRef funcName, LibFunc::Func &F) const |
| Searches for a particular function name. More... | |
| bool | has (LibFunc::Func F) const |
| Tests whether a library function is available. More... | |
| bool | isFunctionVectorizable (StringRef F, unsigned VF) const |
| bool | isFunctionVectorizable (StringRef F) const |
| StringRef | getVectorizedFunction (StringRef F, unsigned VF) const |
| bool | hasOptimizedCodeGen (LibFunc::Func F) const |
| Tests if the function is both available and a candidate for optimized code generation. More... | |
| StringRef | getName (LibFunc::Func F) const |
| bool | invalidate (Module &, const PreservedAnalyses &) |
| Handle invalidation from the pass manager. More... | |
Friends | |
| class | TargetLibraryAnalysis |
| class | TargetLibraryInfoWrapperPass |
Provides information about what library functions are available for the current target.
This both allows optimizations to handle them specially and frontends to disable such optimizations through -fno-builtin etc.
Definition at line 169 of file TargetLibraryInfo.h.
|
inlineexplicit |
Definition at line 176 of file TargetLibraryInfo.h.
|
inline |
Definition at line 179 of file TargetLibraryInfo.h.
|
inline |
Definition at line 180 of file TargetLibraryInfo.h.
|
inline |
Searches for a particular function name.
If it is one of the known library functions, return true and set F to the corresponding value.
Definition at line 194 of file TargetLibraryInfo.h.
References llvm::TargetLibraryInfoImpl::getLibFunc().
Referenced by getAllocationData(), llvm::getIntrinsicIDForCall(), llvm::isFreeCall(), llvm::FortifiedLibCallSimplifier::optimizeCall(), and llvm::FastISel::selectInstruction().
|
inline |
Definition at line 244 of file TargetLibraryInfo.h.
References F(), and llvm::DenseMapBase< DerivedT, KeyT, ValueT, KeyInfoT, BucketT >::find().
Referenced by accumulateAndSortLibcalls(), llvm::EmitFPutS(), llvm::EmitFWrite(), FindCXAAtExit(), and hasMemoryWrite().
Definition at line 208 of file TargetLibraryInfo.h.
References llvm::TargetLibraryInfoImpl::getVectorizedFunction().
|
inline |
Tests whether a library function is available.
Definition at line 199 of file TargetLibraryInfo.h.
Referenced by accumulateAndSortLibcalls(), ConstantFoldScalarCall(), llvm::EmitFPutC(), llvm::EmitFPutS(), llvm::EmitFWrite(), llvm::EmitMemChr(), llvm::EmitMemCmp(), llvm::EmitMemCpyChk(), llvm::EmitPutChar(), llvm::EmitPutS(), llvm::EmitStrChr(), llvm::EmitStrCpy(), llvm::EmitStrLen(), llvm::EmitStrNCmp(), llvm::EmitStrNCpy(), llvm::EmitStrNLen(), FindCXAAtExit(), getAllocationData(), hasMemoryWrite(), hasUnaryFloatFn(), llvm::isFreeCall(), and isMemsetPattern16().
|
inline |
Tests if the function is both available and a candidate for optimized code generation.
Definition at line 214 of file TargetLibraryInfo.h.
Referenced by llvm::FastISel::selectInstruction().
|
inline |
Handle invalidation from the pass manager.
If we try to invalidate this info, just return false. It cannot become invalid even if the module changes.
Definition at line 258 of file TargetLibraryInfo.h.
Definition at line 202 of file TargetLibraryInfo.h.
References llvm::TargetLibraryInfoImpl::isFunctionVectorizable().
Referenced by getVectorCallCost().
Definition at line 205 of file TargetLibraryInfo.h.
References llvm::TargetLibraryInfoImpl::isFunctionVectorizable().
|
inline |
Definition at line 181 of file TargetLibraryInfo.h.
|
inline |
Definition at line 185 of file TargetLibraryInfo.h.
|
friend |
Definition at line 170 of file TargetLibraryInfo.h.
|
friend |
Definition at line 171 of file TargetLibraryInfo.h.
1.8.6