LLVM
8.0.1
|
Wrapper class for AMDGPULIbFuncImpl. More...
#include "Target/AMDGPU/AMDGPULibFunc.h"
Public Member Functions | |
AMDGPULibFunc () | |
AMDGPULibFunc (const AMDGPULibFunc &F) | |
AMDGPULibFunc (EFuncId Id, const AMDGPULibFunc &CopyFrom) | |
Clone a mangled library func with the Id Id and argument info from CopyFrom . More... | |
AMDGPULibFunc (StringRef FName, FunctionType *FT) | |
Construct an unmangled library function on the fly. More... | |
AMDGPULibFunc & | operator= (const AMDGPULibFunc &F) |
std::string | getName () const |
Get unmangled name for mangled library function and name for unmangled library function. More... | |
unsigned | getNumArgs () const |
EFuncId | getId () const |
ENamePrefix | getPrefix () const |
Param * | getLeads () |
Get leading parameters for mangled lib functions. More... | |
const Param * | getLeads () const |
bool | isMangled () const |
void | setId (EFuncId Id) |
bool | parseFuncName (StringRef &MangledName) |
std::string | mangle () const |
void | setName (StringRef N) |
void | setPrefix (ENamePrefix PFX) |
FunctionType * | getFunctionType (Module &M) const |
Static Public Member Functions | |
static Function * | getFunction (llvm::Module *M, const AMDGPULibFunc &fInfo) |
static Function * | getOrInsertFunction (llvm::Module *M, const AMDGPULibFunc &fInfo) |
static bool | parse (StringRef MangledName, AMDGPULibFunc &Ptr) |
Static Public Member Functions inherited from llvm::AMDGPULibFuncBase | |
static bool | isMangled (EFuncId Id) |
static unsigned | getEPtrKindFromAddrSpace (unsigned AS) |
static unsigned | getAddrSpaceFromEPtrKind (unsigned Kind) |
Wrapper class for AMDGPULIbFuncImpl.
Definition at line 357 of file AMDGPULibFunc.h.
|
inlineexplicit |
Definition at line 359 of file AMDGPULibFunc.h.
References F().
AMDGPULibFunc::AMDGPULibFunc | ( | const AMDGPULibFunc & | F | ) |
Definition at line 1018 of file AMDGPULibFunc.cpp.
|
explicit |
Clone a mangled library func with the Id Id
and argument info from CopyFrom
.
Definition at line 1034 of file AMDGPULibFunc.cpp.
References assert(), llvm::AMDGPULibFuncBase::isMangled(), and isMangled().
|
explicit |
Construct an unmangled library function on the fly.
Definition at line 1041 of file AMDGPULibFunc.cpp.
|
static |
Definition at line 950 of file AMDGPULibFunc.cpp.
References llvm::Function::arg_size(), F(), getNumArgs(), llvm::Module::getValueSymbolTable(), llvm::GlobalValue::isDeclaration(), llvm::Function::isVarArg(), llvm::ValueSymbolTable::lookup(), and mangle().
Referenced by getArgType().
|
inline |
Definition at line 392 of file AMDGPULibFunc.h.
References getFunction(), and llvm::json::parse().
Referenced by getOrInsertFunction().
|
inline |
Definition at line 373 of file AMDGPULibFunc.h.
Referenced by llvm::AMDGPULibCalls::fold(), llvm::log2(), and llvm::AMDGPULibCalls::useNative().
AMDGPULibFunc::Param * AMDGPULibFunc::getLeads | ( | ) |
Get leading parameters for mangled lib functions.
Definition at line 1047 of file AMDGPULibFunc.cpp.
Referenced by getArgType(), getVecSize(), llvm::AMDGPULibCalls::initNativeFuncs(), and llvm::log2().
const AMDGPULibFunc::Param * AMDGPULibFunc::getLeads | ( | ) | const |
Definition at line 1053 of file AMDGPULibFunc.cpp.
|
inline |
Get unmangled name for mangled library function and name for unmangled library function.
Definition at line 371 of file AMDGPULibFunc.h.
Referenced by llvm::AMDGPULibCalls::useNative().
|
inline |
Definition at line 372 of file AMDGPULibFunc.h.
Referenced by llvm::AMDGPULibCalls::fold(), getFunction(), and getOrInsertFunction().
|
static |
Definition at line 964 of file AMDGPULibFunc.cpp.
References llvm::AttributeList::addAttribute(), llvm::Function::arg_size(), C, llvm::AMDGPULibFuncBase::EI_NONE, F(), llvm::AttributeList::FunctionIndex, llvm::Module::getContext(), getFunctionType(), getNumArgs(), llvm::Module::getOrInsertFunction(), llvm::Module::getValueSymbolTable(), llvm::GlobalValue::isDeclaration(), llvm::Type::isPointerTy(), llvm::Function::isVarArg(), llvm::ValueSymbolTable::lookup(), lookup(), mangle(), Name, llvm::Attribute::NoUnwind, llvm::FunctionType::param_begin(), llvm::FunctionType::param_end(), and llvm::Attribute::ReadOnly.
Referenced by getArgType(), and llvm::AMDGPULibCalls::useNative().
|
inline |
Definition at line 374 of file AMDGPULibFunc.h.
Referenced by llvm::AMDGPULibCalls::fold(), and llvm::AMDGPULibCalls::useNative().
|
inline |
Definition at line 379 of file AMDGPULibFunc.h.
Referenced by AMDGPULibFunc(), and llvm::AMDGPULibCalls::useNative().
|
inline |
Definition at line 387 of file AMDGPULibFunc.h.
Referenced by getFunction(), getOrInsertFunction(), and llvm::log2().
AMDGPULibFunc & AMDGPULibFunc::operator= | ( | const AMDGPULibFunc & | F | ) |
Definition at line 1027 of file AMDGPULibFunc.cpp.
|
static |
Definition at line 686 of file AMDGPULibFunc.cpp.
References llvm::StringRef::empty().
Referenced by getArgType(), and llvm::log2().
Definition at line 381 of file AMDGPULibFunc.h.
|
inline |
Definition at line 380 of file AMDGPULibFunc.h.
Referenced by llvm::AMDGPULibCalls::initNativeFuncs(), and llvm::log2().
|
inline |
Definition at line 389 of file AMDGPULibFunc.h.
|
inline |
Definition at line 390 of file AMDGPULibFunc.h.
Referenced by llvm::AMDGPULibCalls::fold(), llvm::AMDGPULibCalls::initNativeFuncs(), and llvm::AMDGPULibCalls::useNative().