ExpressionMetadata
public struct ExpressionMetadata : IRMetadata
ExpressionMetadata
nodes represent expressions that are inspired by the
DWARF expression language. They are used in debug intrinsics (such as
llvm.dbg.declare and llvm.dbg.value) to describe how the referenced LLVM
variable relates to the source language variable.
Debug intrinsics are interpreted left-to-right: start by pushing the
value/address operand of the intrinsic onto a stack, then repeatedly push
and evaluate opcodes from the ExpressionMetadata
until the final variable
description is produced.
Though DWARF supports hundreds of expressions, LLVM currently implements a very limited subset.
-
Declaration
Swift
public func asMetadata() -> LLVMMetadataRef
-
Declaration
Swift
public init(llvm: LLVMMetadataRef)