Table of Contents

Interface IDisassemblerCallbacks

Namespace
Ubiquity.NET.Llvm
Assembly
Ubiquity.NET.Llvm.dll

Interface for disassembler callbacks

public interface IDisassemblerCallbacks

Remarks

Exact use and purpose of this interface is not well documented in LLVM and it's use is therefore classified as "experimental". Key to the ambiguity is the parameter and return types of the methods. LLVM headers use byte* and it isn't clear if it is a "blob", string or what? Nor, does it say anything about lifetime or ownership of the data they point to... (This is mostly in regards to the parameters and return of SymbolLookup(ulong, ref ulong, ulong, out LazyEncodedString?) but also applies to the nint TagBuf parameter of OpInfo(ulong, ulong, ulong, ulong, int, nint)

Methods

OpInfo(ulong, ulong, ulong, ulong, int, nint)

Purpose not fully known or well explained in LLVM docs

SymbolLookup(ulong, ref ulong, ulong, out LazyEncodedString?)

Performs symbol lookup for the disassembler