Class BitcodeModule
LLVM Bit-code module
Inheritance
Inherited Members
Namespace: Ubiquity.NET.Llvm
Assembly: Ubiquity.NET.Llvm.dll
Syntax
public sealed class BitcodeModule : IDisposable, IExtensiblePropertyContainer
Remarks
A module is the basic unit for containing code in LLVM. Modules are an in memory representation of the LLVM Intermediate Representation (IR) bit-code. Each
Fields
DebugMetadataVersion | Version of the Debug information Metadata |
DebugVersionValue | Name of the Debug Version information module flag |
DwarfVersionValue | Name of the Dwarf Version module flag |
Properties
Aliases | Gets the global aliases in this module |
Comdats | Gets the Comdats for this module |
Context | Gets the Context this module belongs to |
DataLayoutString | Gets the Data layout string for this module |
DIBuilder | Gets the DebugInfoBuilder used to create debug information for this module |
DICompileUnit | Gets the Debug Compile unit for this module |
Functions | Gets the functions contained in this module |
Globals | Gets the GlobalVariables contained by this module |
IndirectFunctions | Gets the GlobalIFuncs in this module |
IsDisposed | Gets a value indicating whether the module is disposed or not |
Layout | Gets or sets the target data layout for this module |
ModuleFlags | Gets the Metadata for module level flags |
ModuleInlineAsm | Gets or sets the module level inline assembly |
Name | Gets the name of the module |
NamedMetadata | Gets the NamedMDNodes for this module |
SourceFileName | Gets or sets the name of the source file generating this module |
TargetTriple | Gets or sets the Target Triple describing the target, ABI and OS |
Methods
AddAlias(Value, String) | Add an alias to the module |
AddFunction(String, IFunctionType) | Add a function with the specified signature to the module |
AddGlobal(ITypeRef, Boolean, Linkage, Constant) | Adds a global to this module |
AddGlobal(ITypeRef, Boolean, Linkage, Constant, String) | Adds a global to this module |
AddGlobal(ITypeRef, String) | Adds a global to this module |
AddGlobalInAddressSpace(UInt32, ITypeRef, Boolean, Linkage, Constant) | Adds a global to this module |
AddGlobalInAddressSpace(UInt32, ITypeRef, Boolean, Linkage, Constant, String) | Adds a global to this module |
AddGlobalInAddressSpace(UInt32, ITypeRef, String) | Adds a global to this module with a specific address space |
AddModuleFlag(ModuleFlagBehavior, String, UInt32) | Adds a module flag to the module |
AddModuleFlag(ModuleFlagBehavior, String, LlvmMetadata) | Adds a module flag to the module |
AddNamedMetadataOperand(String, LlvmMetadata) | Adds operand value to named metadata |
AddVersionIdentMetadata(String) | Adds an llvm.ident metadata string to the module |
AppendInlineAsm(String) | Appends inline assembly to the module's inline assembly |
Clone() | Clones the current module |
Clone(Context) | Clones the module into a new Context |
CreateAndAddGlobalIFunc(String, ITypeRef, UInt32, IrFunction) | Create and add a global indirect function |
CreateFunction(String, Boolean, IDebugType<ITypeRef, DIType>, IEnumerable<IDebugType<ITypeRef, DIType>>) | Creates a function |
CreateFunction(String, Boolean, IDebugType<ITypeRef, DIType>, IDebugType<ITypeRef, DIType>[]) | Creates a function |
CreateFunction(String, IFunctionType) | Gets an existing function with the specified signature to the module or creates a new one if it doesn't exist |
CreateFunction(DIScope, String, String, DIFile, UInt32, DebugFunctionType, Boolean, Boolean, UInt32, DebugInfoFlags, Boolean) | Creates a Function definition with Debug information |
Dispose() | Disposes the BitcodeModule, releasing resources associated with the module in native code |
GetAlias(String) | Get an alias by name |
GetFunction(String) | Gets a function by name from this module |
GetIntrinsicDeclaration(String, ITypeRef[]) | Gets a declaration for an LLVM intrinsic function |
GetIntrinsicDeclaration(UInt32, ITypeRef[]) | Gets a declaration for an LLVM intrinsic function |
GetNamedGlobal(String) | Retrieves a named global from the module |
GetTypeByName(String) | Retrieves a ITypeRef by name from the module |
Link(BitcodeModule) | Link another module into this one |
LoadFrom(String, Context) | Load a bit-code module from a given file |
LoadFrom(MemoryBuffer, Context) | Load bit code from a memory buffer |
TryGetFunction(String, out IrFunction) | Looks up a function in the module by name |
TryGetNamedGlobalIFunc(String, out GlobalIFunc) | Get a named Global Indirect function in the module |
Verify(out String) | Verifies a bit-code module |
WriteToBuffer() | Writes the LLVM IR bit code into a memory buffer |
WriteToFile(String) | Writes a bit-code module to a file |
WriteToString() | Creates a string representation of the module |
WriteToTextFile(String, out String) | Writes this module as LLVM IR source to a file |
Explicit Interface Implementations
IExtensiblePropertyContainer.AddExtendedPropertyValue(String, Object) | Adds a value to the container |
IExtensiblePropertyContainer.TryGetExtendedPropertyValue<T>(String, out T) | Try to get a value from the container |