LLVM API Documentation

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Macros | Enumerations | Functions | Variables
Function.cpp File Reference
#include "llvm/IR/Function.h"
#include "LLVMContextImpl.h"
#include "SymbolTableListTraitsImpl.h"
#include "llvm/ADT/DenseMap.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/ADT/StringExtras.h"
#include "llvm/CodeGen/ValueTypes.h"
#include "llvm/IR/DerivedTypes.h"
#include "llvm/IR/IntrinsicInst.h"
#include "llvm/IR/LLVMContext.h"
#include "llvm/IR/Module.h"
#include "llvm/Support/CallSite.h"
#include "llvm/Support/InstIterator.h"
#include "llvm/Support/LeakDetector.h"
#include "llvm/Support/ManagedStatic.h"
#include "llvm/Support/RWMutex.h"
#include "llvm/Support/StringPool.h"
#include "llvm/Support/Threading.h"
#include "llvm/IR/Intrinsics.gen"
Include dependency graph for Function.cpp:

Go to the source code of this file.

Macros

#define GET_FUNCTION_RECOGNIZER
 
#define GET_INTRINSIC_NAME_TABLE
 
#define GET_INTRINSIC_GENERATOR_GLOBAL
 
#define GET_INTRINSIC_OVERLOAD_TABLE
 
#define GET_INTRINSIC_ATTRIBUTES
 This defines the "Intrinsic::getAttributes(ID id)" method. More...
 
#define GET_LLVM_INTRINSIC_FOR_GCC_BUILTIN
 

Enumerations

enum  IIT_Info {
  IIT_Done = 0, IIT_I1 = 1, IIT_I8 = 2, IIT_I16 = 3,
  IIT_I32 = 4, IIT_I64 = 5, IIT_F16 = 6, IIT_F32 = 7,
  IIT_F64 = 8, IIT_V2 = 9, IIT_V4 = 10, IIT_V8 = 11,
  IIT_V16 = 12, IIT_V32 = 13, IIT_PTR = 14, IIT_ARG = 15,
  IIT_MMX = 16, IIT_METADATA = 17, IIT_EMPTYSTRUCT = 18, IIT_STRUCT2 = 19,
  IIT_STRUCT3 = 20, IIT_STRUCT4 = 21, IIT_STRUCT5 = 22, IIT_EXTEND_VEC_ARG = 23,
  IIT_TRUNC_VEC_ARG = 24, IIT_ANYPTR = 25, IIT_V1 = 26, IIT_VARARG = 27
}
 

Functions

static void DecodeIITType (unsigned &NextElt, ArrayRef< unsigned char > Infos, SmallVectorImpl< Intrinsic::IITDescriptor > &OutputTable)
 
static TypeDecodeFixedType (ArrayRef< Intrinsic::IITDescriptor > &Infos, ArrayRef< Type * > Tys, LLVMContext &Context)
 

Variables

static DenseMap< const
Function *, PooledStringPtr > * 
GCNames
 
static StringPoolGCNamePool
 
static ManagedStatic
< sys::SmartRWMutex< true > > 
GCLock
 

Macro Definition Documentation

#define GET_FUNCTION_RECOGNIZER
#define GET_INTRINSIC_ATTRIBUTES

This defines the "Intrinsic::getAttributes(ID id)" method.

Definition at line 679 of file Function.cpp.

#define GET_INTRINSIC_GENERATOR_GLOBAL

Definition at line 574 of file Function.cpp.

#define GET_INTRINSIC_NAME_TABLE
#define GET_INTRINSIC_OVERLOAD_TABLE
#define GET_LLVM_INTRINSIC_FOR_GCC_BUILTIN

Definition at line 692 of file Function.cpp.

Enumeration Type Documentation

enum IIT_Info

IIT_Info - These are enumerators that describe the entries returned by the getIntrinsicInfoTableEntries function.

NOTE: This must be kept in synch with the copy in TblGen/IntrinsicEmitter!

Enumerator
IIT_Done 
IIT_I1 
IIT_I8 
IIT_I16 
IIT_I32 
IIT_I64 
IIT_F16 
IIT_F32 
IIT_F64 
IIT_V2 
IIT_V4 
IIT_V8 
IIT_V16 
IIT_V32 
IIT_PTR 
IIT_ARG 
IIT_MMX 
IIT_METADATA 
IIT_EMPTYSTRUCT 
IIT_STRUCT2 
IIT_STRUCT3 
IIT_STRUCT4 
IIT_STRUCT5 
IIT_EXTEND_VEC_ARG 
IIT_TRUNC_VEC_ARG 
IIT_ANYPTR 
IIT_V1 
IIT_VARARG 

Definition at line 427 of file Function.cpp.

Function Documentation

static Type* DecodeFixedType ( ArrayRef< Intrinsic::IITDescriptor > &  Infos,
ArrayRef< Type * >  Tys,
LLVMContext Context 
)
static
static void DecodeIITType ( unsigned NextElt,
ArrayRef< unsigned char >  Infos,
SmallVectorImpl< Intrinsic::IITDescriptor > &  OutputTable 
)
static

Variable Documentation

StringPool* GCNamePool
static

Definition at line 307 of file Function.cpp.

Referenced by llvm::Function::clearGC(), and llvm::Function::setGC().

DenseMap<const Function*,PooledStringPtr>* GCNames
static