16 #ifndef LLVM_IR_INTRINSICS_H
17 #define LLVM_IR_INTRINSICS_H
39 #define GET_INTRINSIC_ENUM_VALUES
40 #include "llvm/IR/Intrinsics.gen"
41 #undef GET_INTRINSIC_ENUM_VALUES
LLVM Argument representation.
unsigned getArgumentNumber() const
A Module instance is used to store all the information related to an LLVM module. ...
bool isOverloaded(ID id)
Returns true if the intrinsic can be overloaded.
This is a type descriptor which explains the type requirements of an intrinsic.
FunctionType * getType(LLVMContext &Context, ID id, ArrayRef< Type * > Tys=None)
Return the function type for an intrinsic.
ArgKind getArgumentKind() const
This class consists of common code factored out of the SmallVector class to reduce code duplication b...
FunctionType - Class to represent function types.
unsigned Struct_NumElements
ArrayRef - Represent a constant reference to an array (0 or more elements consecutively in memory)...
Function * getDeclaration(Module *M, ID id, ArrayRef< Type * > Tys=None)
Create or insert an LLVM Function declaration for an intrinsic, and return it.
ID getIntrinsicForGCCBuiltin(const char *Prefix, const char *BuiltinName)
Map a GCC builtin name to an intrinsic ID.
bool isLeaf(ID id)
Returns true if the intrinsic is a leaf, i.e.
This is an important class for using LLVM in a threaded context.
unsigned Pointer_AddressSpace
enum llvm::Intrinsic::IITDescriptor::IITDescriptorKind Kind
void getIntrinsicInfoTableEntries(ID id, SmallVectorImpl< IITDescriptor > &T)
Return the IIT table descriptor for the specified intrinsic into an array of IITDescriptors.
std::string getName(ID id, ArrayRef< Type * > Tys=None)
Return the LLVM name for an intrinsic, such as "llvm.ppc.altivec.lvx".
AttributeSet getAttributes(LLVMContext &C, ID id)
Return the attributes for an intrinsic.
ID getIntrinsicForMSBuiltin(const char *Prefix, const char *BuiltinName)
Map a MS builtin name to an intrinsic ID.