LLVM API Documentation
#include <TargetIntrinsicInfo.h>
Public Member Functions | |
TargetIntrinsicInfo () | |
virtual | ~TargetIntrinsicInfo () |
virtual std::string | getName (unsigned IID, Type **Tys=nullptr, unsigned numTys=0) const =0 |
virtual unsigned | lookupName (const char *Name, unsigned Len) const =0 |
virtual unsigned | getIntrinsicID (Function *F) const |
Return the target intrinsic ID of a function, or 0. | |
virtual bool | isOverloaded (unsigned IID) const =0 |
Returns true if the intrinsic can be overloaded. | |
virtual Function * | getDeclaration (Module *M, unsigned ID, Type **Tys=nullptr, unsigned numTys=0) const =0 |
TargetIntrinsicInfo - Interface to description of machine instruction set
Definition at line 30 of file TargetIntrinsicInfo.h.
TargetIntrinsicInfo::TargetIntrinsicInfo | ( | ) |
Definition at line 19 of file TargetIntrinsicInfo.cpp.
TargetIntrinsicInfo::~TargetIntrinsicInfo | ( | ) | [virtual] |
Definition at line 22 of file TargetIntrinsicInfo.cpp.
virtual Function* llvm::TargetIntrinsicInfo::getDeclaration | ( | Module * | M, |
unsigned | ID, | ||
Type ** | Tys = nullptr , |
||
unsigned | numTys = 0 |
||
) | const [pure virtual] |
Create or insert an LLVM Function declaration for an intrinsic, and return it. The Tys and numTys are for intrinsics with overloaded types. See above for more information.
Implemented in llvm::AMDGPUIntrinsicInfo.
unsigned TargetIntrinsicInfo::getIntrinsicID | ( | Function * | F | ) | const [virtual] |
Return the target intrinsic ID of a function, or 0.
Definition at line 25 of file TargetIntrinsicInfo.cpp.
References llvm::StringMapEntry< ValueTy >::getKeyData(), llvm::StringMapEntryBase::getKeyLength(), llvm::Value::getValueName(), and lookupName().
virtual std::string llvm::TargetIntrinsicInfo::getName | ( | unsigned | IID, |
Type ** | Tys = nullptr , |
||
unsigned | numTys = 0 |
||
) | const [pure virtual] |
Return the name of a target intrinsic, e.g. "llvm.bfin.ssync". The Tys and numTys parameters are for intrinsics with overloaded types (e.g., those using iAny or fAny). For a declaration for an overloaded intrinsic, Tys should point to an array of numTys pointers to Type, and must provide exactly one type for each overloaded type in the intrinsic.
Implemented in llvm::AMDGPUIntrinsicInfo.
virtual bool llvm::TargetIntrinsicInfo::isOverloaded | ( | unsigned | IID | ) | const [pure virtual] |
Returns true if the intrinsic can be overloaded.
Implemented in llvm::AMDGPUIntrinsicInfo.
virtual unsigned llvm::TargetIntrinsicInfo::lookupName | ( | const char * | Name, |
unsigned | Len | ||
) | const [pure virtual] |
Look up target intrinsic by name. Return intrinsic ID or 0 for unknown names.
Implemented in llvm::AMDGPUIntrinsicInfo.
Referenced by getIntrinsicID().