Project Alice
|
Typedefs | |
typedef int | LLVMBool |
typedef struct LLVMOpaqueMemoryBuffer * | LLVMMemoryBufferRef |
typedef struct LLVMOpaqueContext * | LLVMContextRef |
typedef struct LLVMOpaqueModule * | LLVMModuleRef |
typedef struct LLVMOpaqueType * | LLVMTypeRef |
typedef struct LLVMOpaqueValue * | LLVMValueRef |
typedef struct LLVMOpaqueBasicBlock * | LLVMBasicBlockRef |
typedef struct LLVMOpaqueMetadata * | LLVMMetadataRef |
typedef struct LLVMOpaqueNamedMDNode * | LLVMNamedMDNodeRef |
typedef struct LLVMOpaqueValueMetadataEntry | LLVMValueMetadataEntry |
typedef struct LLVMOpaqueBuilder * | LLVMBuilderRef |
typedef struct LLVMOpaqueDIBuilder * | LLVMDIBuilderRef |
typedef struct LLVMOpaqueModuleProvider * | LLVMModuleProviderRef |
typedef struct LLVMOpaquePassManager * | LLVMPassManagerRef |
typedef struct LLVMOpaqueUse * | LLVMUseRef |
typedef struct LLVMOpaqueOperandBundle * | LLVMOperandBundleRef |
typedef struct LLVMOpaqueAttributeRef * | LLVMAttributeRef |
typedef struct LLVMOpaqueDiagnosticInfo * | LLVMDiagnosticInfoRef |
typedef struct LLVMComdat * | LLVMComdatRef |
typedef struct LLVMOpaqueModuleFlagEntry | LLVMModuleFlagEntry |
typedef struct LLVMOpaqueJITEventListener * | LLVMJITEventListenerRef |
typedef struct LLVMOpaqueBinary * | LLVMBinaryRef |
typedef struct LLVMOpaqueAttributeRef* LLVMAttributeRef |
typedef struct LLVMOpaqueBasicBlock* LLVMBasicBlockRef |
typedef struct LLVMOpaqueBinary* LLVMBinaryRef |
typedef struct LLVMOpaqueBuilder* LLVMBuilderRef |
typedef struct LLVMComdat* LLVMComdatRef |
typedef struct LLVMOpaqueContext* LLVMContextRef |
typedef struct LLVMOpaqueDiagnosticInfo* LLVMDiagnosticInfoRef |
typedef struct LLVMOpaqueDIBuilder* LLVMDIBuilderRef |
typedef struct LLVMOpaqueJITEventListener* LLVMJITEventListenerRef |
typedef struct LLVMOpaqueMemoryBuffer* LLVMMemoryBufferRef |
LLVM uses a polymorphic type hierarchy which C cannot represent, therefore parameters must be passed as base types. Despite the declared types, most of the functions provided operate only on branches of the type hierarchy. The declared parameter names are descriptive and specify which type is required. Additionally, each type hierarchy is documented along with the functions that operate upon it. For more detail, refer to LLVM's C++ code. If in doubt, refer to Core.cpp, which performs parameter downcasts in the form unwrap<RequiredType>(Param). Used to pass regions of memory through LLVM interfaces.
typedef struct LLVMOpaqueMetadata* LLVMMetadataRef |
typedef struct LLVMOpaqueModuleFlagEntry LLVMModuleFlagEntry |
typedef struct LLVMOpaqueModuleProvider* LLVMModuleProviderRef |
typedef struct LLVMOpaqueModule* LLVMModuleRef |
typedef struct LLVMOpaqueNamedMDNode* LLVMNamedMDNodeRef |
typedef struct LLVMOpaqueOperandBundle* LLVMOperandBundleRef |
typedef struct LLVMOpaquePassManager* LLVMPassManagerRef |
typedef struct LLVMOpaqueType* LLVMTypeRef |
typedef struct LLVMOpaqueUse* LLVMUseRef |
typedef struct LLVMOpaqueValueMetadataEntry LLVMValueMetadataEntry |
typedef struct LLVMOpaqueValue* LLVMValueRef |