|
LLVM
4.0.0
|
Typedefs | |
| typedef int | LLVMBool |
| typedef struct LLVMOpaqueMemoryBuffer * | LLVMMemoryBufferRef |
| LLVM uses a polymorphic type hierarchy which C cannot represent, therefore parameters must be passed as base types. More... | |
| typedef struct LLVMOpaqueContext * | LLVMContextRef |
| The top-level container for all LLVM global data. More... | |
| typedef struct LLVMOpaqueModule * | LLVMModuleRef |
| The top-level container for all other LLVM Intermediate Representation (IR) objects. More... | |
| typedef struct LLVMOpaqueType * | LLVMTypeRef |
| Each value in the LLVM IR has a type, an LLVMTypeRef. More... | |
| typedef struct LLVMOpaqueValue * | LLVMValueRef |
| Represents an individual value in LLVM IR. More... | |
| typedef struct LLVMOpaqueBasicBlock * | LLVMBasicBlockRef |
| Represents a basic block of instructions in LLVM IR. More... | |
| typedef struct LLVMOpaqueBuilder * | LLVMBuilderRef |
| Represents an LLVM basic block builder. More... | |
| typedef struct LLVMOpaqueModuleProvider * | LLVMModuleProviderRef |
| Interface used to provide a module to JIT or interpreter. More... | |
| typedef struct LLVMOpaquePassManager * | LLVMPassManagerRef |
| typedef struct LLVMOpaquePassRegistry * | LLVMPassRegistryRef |
| typedef struct LLVMOpaqueUse * | LLVMUseRef |
| Used to get the users and usees of a Value. More... | |
| typedef struct LLVMOpaqueAttributeRef * | LLVMAttributeRef |
| Used to represent an attributes. More... | |
| typedef struct LLVMOpaqueDiagnosticInfo * | LLVMDiagnosticInfoRef |
| typedef struct LLVMOpaqueAttributeRef* LLVMAttributeRef |
| typedef struct LLVMOpaqueBasicBlock* LLVMBasicBlockRef |
Represents a basic block of instructions in LLVM IR.
This models llvm::BasicBlock.
| typedef struct LLVMOpaqueBuilder* LLVMBuilderRef |
Represents an LLVM basic block builder.
This models llvm::IRBuilder.
| typedef struct LLVMOpaqueContext* LLVMContextRef |
| typedef struct LLVMOpaqueDiagnosticInfo* LLVMDiagnosticInfoRef |
| 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 LLVMOpaqueModuleProvider* LLVMModuleProviderRef |
Interface used to provide a module to JIT or interpreter.
This is now just a synonym for llvm::Module, but we have to keep using the different type to keep binary compatibility.
| typedef struct LLVMOpaqueModule* LLVMModuleRef |
The top-level container for all other LLVM Intermediate Representation (IR) objects.
| typedef struct LLVMOpaquePassManager* LLVMPassManagerRef |
| typedef struct LLVMOpaquePassRegistry* LLVMPassRegistryRef |
| typedef struct LLVMOpaqueType* LLVMTypeRef |
Each value in the LLVM IR has a type, an LLVMTypeRef.
| typedef struct LLVMOpaqueUse* LLVMUseRef |
| typedef struct LLVMOpaqueValue* LLVMValueRef |
Represents an individual value in LLVM IR.
This models llvm::Value.
1.8.6