B2R2.BinIR Namespace
Contains types that define intermediate representations (IRs) used in B2R2 including LowUIR and SSA.
| Type/Module | Description |
|
Provides functions to access BinOpType. |
|
|
Represents a binary operator. |
|
|
Provides functions to access CastKind. |
|
|
Represents a cast kind, used in the |
|
|
Represents the hash-consing metadata of an object, which includes a unique ID (tag) and a precomputed hash value. This value is attached to LowUIR expressions and statements only when hash consing is enabled; otherwise the metadata field is null. |
|
|
Raised when an illegal AST type is used. This should never be raised in normal situation. |
|
|
Provides functions to access InterJmpKind. |
|
|
Represents the kind of an InterJmp (inter-instruction jump) statement, such as a call, return, etc. A jump statement can combine these flags when it has multiple properties. |
|
|
Raised when an assignment expression has an invalid destination expression. |
|
|
Rasied when an invalid expression is encountered during type checking or evaluation. |
|
|
Raised when an illegal number of bits is used to represent floats. |
|
|
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. |
|
|
Exposes pretty printing functions for LowUIR and SSA statements. |
|
|
Provides functions to access RelOpType. |
|
|
Represents a relational operator. |
|
|
Provides functions to access SideEffect. |
|
|
Represents a side effect that can be generated by an instruction. |
|
|
Raised when an expression does not type-check. |
|
|
Provides functions to access UnOpType. |
|
|
Represents a unary operator. |
B2R2