Header menu logo B2R2

B2R2.BinIR.LowUIR Namespace

Contains the definition of the LowUIR intermediate representation (IR) used in B2R2, which is the main IR used to represent the semantics of instructions in a platform-agnostic way.

Type/Module Description

AST

Provides a set of functions for constructing LowUIR expressions and statements. Any LowUIR AST construction must be done through the functions in this module.

Expr (Module)

Provides utility functions for expressions.

Expr (Type)

Represents a LowUIR expression. You must create Expr/Stmt through the AST module. NEVER directly construct Expr nor Stmt unless you know what you are doing.

IRegisterVarAccessor

Provides methods to retrieve register expressions by register ID or name, obtain pseudo-registers, and enumerate all or general-purpose registers. This interface abstracts architecture-specific details and enables consistent interaction with register variables within the LowUIR intermediate representation.

Parser

Represents a parser for LowUIR statements.

StaticValueFacts (Module)

Provides functions for extracting statically resolvable memory access addresses and constant register definitions from LowUIR statements.

StaticValueFacts (Type)

Represents statically resolvable memory access addresses and constant register definitions in a sequence of LowUIR statements.

Stmt (Module)

Provides utility functions for statements.

Stmt (Type)

Represents a LowUIR statement. You must create Expr/Stmt through the AST module. NEVER directly construct Expr nor Stmt unless you know what you are doing.

TypeCheck

Provides functions for type checking LowUIR.

Type something to start searching.