LLVM: llvm::AMDGPULibFuncImpl Class Reference (original) (raw)

#include "[Target/AMDGPU/AMDGPULibFunc.h](AMDGPULibFunc%5F8h%5Fsource.html)"

Public Member Functions
AMDGPULibFuncImpl ()=default
virtual ~AMDGPULibFuncImpl ()=default
virtual std::string getName () const =0
Get unmangled name for mangled library function and name for unmangled library function.
virtual unsigned getNumArgs () const =0
EFuncId getId () const
ENamePrefix getPrefix () const
bool isMangled () const
void setId (EFuncId id)
virtual bool parseFuncName (StringRef &mangledName)=0
virtual std::string mangle () const =0
void setName (StringRef N)
void setPrefix (ENamePrefix pfx)
virtual FunctionType * getFunctionType (const Module &M) const =0
Additional Inherited Members
Public Types inherited from llvm::AMDGPULibFuncBase
enum EFuncId { EI_NONE, EI_ABS, EI_ABS_DIFF, EI_ACOS, EI_ACOSH, EI_ACOSPI, EI_ADD_SAT, EI_ALL, EI_ANY, EI_ASIN, EI_ASINH, EI_ASINPI, EI_ASYNC_WORK_GROUP_COPY, EI_ASYNC_WORK_GROUP_STRIDED_COPY, EI_ATAN, EI_ATAN2, EI_ATAN2PI, EI_ATANH, EI_ATANPI, EI_ATOMIC_ADD, EI_ATOMIC_AND, EI_ATOMIC_CMPXCHG, EI_ATOMIC_DEC, EI_ATOMIC_INC, EI_ATOMIC_MAX, EI_ATOMIC_MIN, EI_ATOMIC_OR, EI_ATOMIC_SUB, EI_ATOMIC_XCHG, EI_ATOMIC_XOR, EI_BITSELECT, EI_CBRT, EI_CEIL, EI_CLAMP, EI_CLZ, EI_COMMIT_READ_PIPE, EI_COMMIT_WRITE_PIPE, EI_COPYSIGN, EI_COS, EI_COSH, EI_COSPI, EI_CROSS, EI_CTZ, EI_DEGREES, EI_DISTANCE, EI_DIVIDE, EI_DOT, EI_ERF, EI_ERFC, EI_EXP, EI_EXP10, EI_EXP2, EI_EXPM1, EI_FABS, EI_FAST_DISTANCE, EI_FAST_LENGTH, EI_FAST_NORMALIZE, EI_FDIM, EI_FLOOR, EI_FMA, EI_FMAX, EI_FMIN, EI_FMOD, EI_FRACT, EI_FREXP, EI_GET_IMAGE_ARRAY_SIZE, EI_GET_IMAGE_CHANNEL_DATA_TYPE, EI_GET_IMAGE_CHANNEL_ORDER, EI_GET_IMAGE_DIM, EI_GET_IMAGE_HEIGHT, EI_GET_IMAGE_WIDTH, EI_GET_PIPE_MAX_PACKETS, EI_GET_PIPE_NUM_PACKETS, EI_HADD, EI_HYPOT, EI_ILOGB, EI_ISEQUAL, EI_ISFINITE, EI_ISGREATER, EI_ISGREATEREQUAL, EI_ISINF, EI_ISLESS, EI_ISLESSEQUAL, EI_ISLESSGREATER, EI_ISNAN, EI_ISNORMAL, EI_ISNOTEQUAL, EI_ISORDERED, EI_ISUNORDERED, EI_LDEXP, EI_LENGTH, EI_LGAMMA, EI_LGAMMA_R, EI_LOG, EI_LOG10, EI_LOG1P, EI_LOG2, EI_LOGB, EI_MAD, EI_MAD24, EI_MAD_HI, EI_MAD_SAT, EI_MAX, EI_MAXMAG, EI_MIN, EI_MINMAG, EI_MIX, EI_MODF, EI_MUL24, EI_MUL_HI, EI_NAN, EI_NEXTAFTER, EI_NORMALIZE, EI_POPCOUNT, EI_POW, EI_POWN, EI_POWR, EI_PREFETCH, EI_RADIANS, EI_RECIP, EI_REMAINDER, EI_REMQUO, EI_RESERVE_READ_PIPE, EI_RESERVE_WRITE_PIPE, EI_RHADD, EI_RINT, EI_ROOTN, EI_ROTATE, EI_ROUND, EI_RSQRT, EI_SELECT, EI_SHUFFLE, EI_SHUFFLE2, EI_SIGN, EI_SIGNBIT, EI_SIN, EI_SINCOS, EI_SINH, EI_SINPI, EI_SMOOTHSTEP, EI_SQRT, EI_STEP, EI_SUB_GROUP_BROADCAST, EI_SUB_GROUP_COMMIT_READ_PIPE, EI_SUB_GROUP_COMMIT_WRITE_PIPE, EI_SUB_GROUP_REDUCE_ADD, EI_SUB_GROUP_REDUCE_MAX, EI_SUB_GROUP_REDUCE_MIN, EI_SUB_GROUP_RESERVE_READ_PIPE, EI_SUB_GROUP_RESERVE_WRITE_PIPE, EI_SUB_GROUP_SCAN_EXCLUSIVE_ADD, EI_SUB_GROUP_SCAN_EXCLUSIVE_MAX, EI_SUB_GROUP_SCAN_EXCLUSIVE_MIN, EI_SUB_GROUP_SCAN_INCLUSIVE_ADD, EI_SUB_GROUP_SCAN_INCLUSIVE_MAX, EI_SUB_GROUP_SCAN_INCLUSIVE_MIN, EI_SUB_SAT, EI_TAN, EI_TANH, EI_TANPI, EI_TGAMMA, EI_TRUNC, EI_UPSAMPLE, EI_VEC_STEP, EI_VSTORE, EI_VSTORE16, EI_VSTORE2, EI_VSTORE3, EI_VSTORE4, EI_VSTORE8, EI_WORK_GROUP_COMMIT_READ_PIPE, EI_WORK_GROUP_COMMIT_WRITE_PIPE, EI_WORK_GROUP_REDUCE_ADD, EI_WORK_GROUP_REDUCE_MAX, EI_WORK_GROUP_REDUCE_MIN, EI_WORK_GROUP_RESERVE_READ_PIPE, EI_WORK_GROUP_RESERVE_WRITE_PIPE, EI_WORK_GROUP_SCAN_EXCLUSIVE_ADD, EI_WORK_GROUP_SCAN_EXCLUSIVE_MAX, EI_WORK_GROUP_SCAN_EXCLUSIVE_MIN, EI_WORK_GROUP_SCAN_INCLUSIVE_ADD, EI_WORK_GROUP_SCAN_INCLUSIVE_MAX, EI_WORK_GROUP_SCAN_INCLUSIVE_MIN, EI_WRITE_IMAGEF, EI_WRITE_IMAGEI, EI_WRITE_IMAGEUI, EI_NCOS, EI_NEXP2, EI_NFMA, EI_NLOG2, EI_NRCP, EI_NRSQRT, EI_NSIN, EI_NSQRT, EI_FTZ, EI_FLDEXP, EI_CLASS, EI_RCBRT, EI_LAST_MANGLED, EI_READ_PIPE_2, EI_READ_PIPE_4, EI_WRITE_PIPE_2, EI_WRITE_PIPE_4, EX_INTRINSICS_COUNT }
enum ENamePrefix { NOPFX, NATIVE, HALF }
enum EType { B8 = 1 , B16 = 2 , B32 = 3 , B64 = 4 , SIZE_MASK = 7 , FLOAT = 0x10 , INT = 0x20 , UINT = 0x30 , BASE_TYPE_MASK = 0x30 , U8 = UINT | B8 , U16 = UINT B16 , U32 = UINT B32 , U64 = UINT B64 , I8 = INT B8 , I16 = INT B16 , I32 = INT B32 , I64 = INT B64 , F16 = FLOAT B16 , F32 = FLOAT B32 , F64 = FLOAT B64 , IMG1DA = 0x80 , IMG1DB, IMG2DA, IMG1D, IMG2D, IMG3D, SAMPLER, EVENT, DUMMY }
enum EPtrKind { BYVALUE = 0 , ADDR_SPACE = 0xF , CONST = 0x10 , VOLATILE = 0x20 }
Static Public Member Functions inherited from llvm::AMDGPULibFuncBase
static bool isMangled (EFuncId Id)
static unsigned getEPtrKindFromAddrSpace (unsigned AS)
static unsigned getAddrSpaceFromEPtrKind (unsigned Kind)

Definition at line 331 of file AMDGPULibFunc.h.

llvm::AMDGPULibFuncImpl::AMDGPULibFuncImpl ( ) default

~AMDGPULibFuncImpl()

virtual llvm::AMDGPULibFuncImpl::~AMDGPULibFuncImpl ( ) virtualdefault

getFunctionType()

getId()

EFuncId llvm::AMDGPULibFuncImpl::getId ( ) const inline

getName()

virtual std::string llvm::AMDGPULibFuncImpl::getName ( ) const pure virtual

getNumArgs()

virtual unsigned llvm::AMDGPULibFuncImpl::getNumArgs ( ) const pure virtual

getPrefix()

ENamePrefix llvm::AMDGPULibFuncImpl::getPrefix ( ) const inline

isMangled()

bool llvm::AMDGPULibFuncImpl::isMangled ( ) const inline

mangle()

virtual std::string llvm::AMDGPULibFuncImpl::mangle ( ) const pure virtual

parseFuncName()

virtual bool llvm::AMDGPULibFuncImpl::parseFuncName ( StringRef & mangledName) pure virtual

setId()

void llvm::AMDGPULibFuncImpl::setId ( EFuncId id) inline

setName()

void llvm::AMDGPULibFuncImpl::setName ( StringRef N) inline

setPrefix()

void llvm::AMDGPULibFuncImpl::setPrefix ( ENamePrefix pfx) inline

FKind

FuncId

EFuncId llvm::AMDGPULibFuncImpl::FuncId protected

Definition at line 358 of file AMDGPULibFunc.h.

Referenced by llvm::AMDGPUMangledLibFunc::AMDGPUMangledLibFunc(), llvm::AMDGPUMangledLibFunc::AMDGPUMangledLibFunc(), llvm::AMDGPUMangledLibFunc::AMDGPUMangledLibFunc(), llvm::AMDGPUUnmangledLibFunc::AMDGPUUnmangledLibFunc(), llvm::AMDGPUMangledLibFunc::getFunctionType(), getId(), llvm::AMDGPUMangledLibFunc::getNumArgs(), llvm::AMDGPUUnmangledLibFunc::getNumArgs(), isMangled(), llvm::AMDGPUMangledLibFunc::parseFuncName(), llvm::AMDGPUUnmangledLibFunc::parseFuncName(), and setId().

Name

std::string llvm::AMDGPULibFuncImpl::Name protected

The documentation for this class was generated from the following file: