Table of Contents

Class MDNode

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

IrMetadata node for LLVM IR Bitcode modules

public class MDNode : IrMetadata, IEquatable<IrMetadata>
Inheritance
MDNode
Implements
Derived
Inherited Members

Remarks

IrMetadata nodes may be uniqued, or distinct. Temporary nodes with support for ReplaceAllUsesWith(IrMetadata) may be used to defer uniqueing until the forward references are known.

There is limited support for ReplaceAllUsesWith(IrMetadata) at construction. At construction, if any operand is a temporary or otherwise unresolved uniqued node, the node itself is unresolved. As soon as all operands become resolved the node will no longer support ReplaceAllUsesWith(IrMetadata)

Properties

Context

Gets the Context this node belongs to

IsDeleted

Gets a value indicating whether this node was deleted

IsDistinct

Gets a value indicating whether this node is distinct

IsResolved

Gets a value indicating whether this node is resolved

IsTemporary

Gets a value indicating whether this node is a temporary

IsUniqued

Gets a value indicating whether this node is uniqued

Operands

Gets the operands for this node, if any

Methods

GetOperandString(int)

Gets a string operand by index

GetOperand<T>(int)

Gets an operand by index as a specific type

ReplaceAllUsesWith(IrMetadata)

Replace all uses of this node with a new node