LLVM  16.0.0git
Classes | Namespaces | Macros | Enumerations | Functions | Variables
Intrinsics.h File Reference
#include "llvm/ADT/ArrayRef.h"
#include "llvm/ADT/None.h"
#include "llvm/ADT/Optional.h"
#include "llvm/Support/TypeSize.h"
#include <string>
#include "llvm/IR/IntrinsicEnums.inc"
Include dependency graph for Intrinsics.h:

Go to the source code of this file.


struct  llvm::Intrinsic::IITDescriptor
 This is a type descriptor which explains the type requirements of an intrinsic. More...


 This is an optimization pass for GlobalISel generic memory operations.
 This namespace contains an enum with a value for every intrinsic/builtin function known by LLVM.




enum  llvm::Intrinsic::IndependentIntrinsics : unsigned { llvm::Intrinsic::not_intrinsic = 0 }
enum  llvm::Intrinsic::MatchIntrinsicTypesResult { llvm::Intrinsic::MatchIntrinsicTypes_Match = 0, llvm::Intrinsic::MatchIntrinsicTypes_NoMatchRet = 1, llvm::Intrinsic::MatchIntrinsicTypes_NoMatchArg = 2 }


StringRef llvm::Intrinsic::getName (ID id)
 Return the LLVM name for an intrinsic, such as "llvm.ppc.altivec.lvx". More...
StringRef llvm::Intrinsic::getBaseName (ID id)
 Return the LLVM name for an intrinsic, without encoded types for overloading, such as "llvm.ssa.copy". More...
std::string llvm::Intrinsic::getName (ID Id, ArrayRef< Type * > Tys, Module *M, FunctionType *FT=nullptr)
 Return the LLVM name for an intrinsic, such as "llvm.ppc.altivec.lvx" or "llvm.ssa.copy.p0s_s.1". More...
std::string llvm::Intrinsic::getNameNoUnnamedTypes (ID Id, ArrayRef< Type * > Tys)
 Return the LLVM name for an intrinsic. More...
FunctionTypellvm::Intrinsic::getType (LLVMContext &Context, ID id, ArrayRef< Type * > Tys=None)
 Return the function type for an intrinsic. More...
bool llvm::Intrinsic::isOverloaded (ID id)
 Returns true if the intrinsic can be overloaded. More...
bool llvm::Intrinsic::isLeaf (ID id)
 Returns true if the intrinsic is a leaf, i.e. More...
AttributeList llvm::Intrinsic::getAttributes (LLVMContext &C, ID id)
 Return the attributes for an intrinsic. More...
Functionllvm::Intrinsic::getDeclaration (Module *M, ID id, ArrayRef< Type * > Tys=None)
 Create or insert an LLVM Function declaration for an intrinsic, and return it. More...
int llvm::Intrinsic::lookupLLVMIntrinsicByName (ArrayRef< const char * > NameTable, StringRef Name)
 Looks up Name in NameTable via binary search. More...
ID llvm::Intrinsic::getIntrinsicForClangBuiltin (const char *Prefix, StringRef BuiltinName)
 Map a Clang builtin name to an intrinsic ID. More...
ID llvm::Intrinsic::getIntrinsicForMSBuiltin (const char *Prefix, StringRef BuiltinName)
 Map a MS builtin name to an intrinsic ID. More...
void llvm::Intrinsic::getIntrinsicInfoTableEntries (ID id, SmallVectorImpl< IITDescriptor > &T)
 Return the IIT table descriptor for the specified intrinsic into an array of IITDescriptors. More...
MatchIntrinsicTypesResult llvm::Intrinsic::matchIntrinsicSignature (FunctionType *FTy, ArrayRef< IITDescriptor > &Infos, SmallVectorImpl< Type * > &ArgTys)
 Match the specified function type with the type constraints specified by the .td file. More...
bool llvm::Intrinsic::matchIntrinsicVarArg (bool isVarArg, ArrayRef< IITDescriptor > &Infos)
 Verify if the intrinsic has variable arguments. More...
bool llvm::Intrinsic::getIntrinsicSignature (Function *F, SmallVectorImpl< Type * > &ArgTys)
 Gets the type arguments of an intrinsic call by matching type contraints specified by the .td file. More...
llvm::Optional< Function * > llvm::Intrinsic::remangleIntrinsicFunction (Function *F)


static const int llvm::Intrinsic::NoAliasScopeDeclScopeArg = 0

Macro Definition Documentation



Definition at line 48 of file Intrinsics.h.