Header menu logo B2R2

B2R2.BinIR Namespace

Contains types that define intermediate representations (IRs) used in B2R2 including LowUIR and SSA.

Type/Module Description

BinOpType (Module)

Provides functions to access BinOpType.

BinOpType (Type)

Represents a binary operator.

CastKind (Module)

Provides functions to access CastKind.

CastKind (Type)

Represents a cast kind, used in the Cast expression.

HashConsingInfo

Represents the hash consing information of an object, which includes a unique ID (tag) and a hash value.

IllegalASTTypeException

Raised when an illegal AST type is used. This should never be raised in normal situation.

InterJmpKind

Represents the kind of an InterJmp (inter-instruction jump) statement, such as a call, return, etc. A jump statement can have a combination of these kinds.

InvalidAssignmentException

Raised when an assignment expression has an invalid destination expression.

InvalidExprException

Rasied when an invalid expression is encountered during type checking or evaluation.

InvalidFloatTypeException

Raised when an illegal number of bits is used to represent floats.

Label

Represents a symbolic label that can be a jump target. Each label has its name and a unique identifier. We also associate an address with the label to represent the location of the label in the binary, i.e., the address of the instruction that the label belongs to.

PrettyPrinter

Exposes pretty printing functions for LowUIR and SSA statements.

RelOpType (Module)

Provides functions to access RelOpType.

RelOpType (Type)

Represents a relational operator.

SideEffect

Represents a side effect that can be generated by an instruction.

TypeCheckException

Raised when an expression does not type-check.

UnOpType (Module)

Provides functions to access UnOpType.

UnOpType (Type)

Represents a unary operator.

Type something to start searching.