Header menu logo B2R2

SymbExpr Type

Represents a symbolic bit-vector value. SymbEval keeps LowUIR condition values as 1-bit bit-vectors. Path conditions contain expressions that are interpreted as the 1-bit true value.

Union cases

Union case Description

BinOp(BinOpType, typ, SymbExpr, SymbExpr)

Full Usage: BinOp(BinOpType, typ, SymbExpr, SymbExpr)

Parameters:

A binary operation over symbolic expressions.

Item1 : BinOpType
typ : RegType
Item3 : SymbExpr
Item4 : SymbExpr

Cast(CastKind, typ, SymbExpr)

Full Usage: Cast(CastKind, typ, SymbExpr)

Parameters:

A type conversion.

Item1 : CastKind
typ : RegType
Item3 : SymbExpr

Const BitVector

Full Usage: Const BitVector

Parameters:

A concrete bit-vector constant.

Item : BitVector

Extract(SymbExpr, typ, startPos)

Full Usage: Extract(SymbExpr, typ, startPos)

Parameters:

A bit extraction.

Item1 : SymbExpr
typ : RegType
startPos : int

FuncApp(name, typ, args)

Full Usage: FuncApp(name, typ, args)

Parameters:

An uninterpreted function application.

name : string
typ : RegType
args : SymbExpr list

Ite(cond, thenExpr, elseExpr)

Full Usage: Ite(cond, thenExpr, elseExpr)

Parameters:

An if-then-else expression.

cond : SymbExpr
thenExpr : SymbExpr
elseExpr : SymbExpr

Load(Endian, typ, addr)

Full Usage: Load(Endian, typ, addr)

Parameters:

A symbolic memory load.

Item1 : Endian
typ : RegType
addr : SymbExpr

RelOp(RelOpType, SymbExpr, SymbExpr)

Full Usage: RelOp(RelOpType, SymbExpr, SymbExpr)

Parameters:

A relational operation over symbolic expressions.

Item1 : RelOpType
Item2 : SymbExpr
Item3 : SymbExpr

UnOp(UnOpType, SymbExpr)

Full Usage: UnOp(UnOpType, SymbExpr)

Parameters:

A unary operation over a symbolic expression.

Item1 : UnOpType
Item2 : SymbExpr

Undef(typ, reason)

Full Usage: Undef(typ, reason)

Parameters:

A value that exists in the source IR but has undefined semantics.

typ : RegType
reason : string

Var(name, typ)

Full Usage: Var(name, typ)

Parameters:

A named symbolic bit-vector variable.

name : string
typ : RegType

Instance members

Instance member Description

this.IsBinOp

Full Usage: this.IsBinOp

Returns: bool
Returns: bool

this.IsCast

Full Usage: this.IsCast

Returns: bool
Returns: bool

this.IsConst

Full Usage: this.IsConst

Returns: bool
Returns: bool

this.IsExtract

Full Usage: this.IsExtract

Returns: bool
Returns: bool

this.IsFuncApp

Full Usage: this.IsFuncApp

Returns: bool
Returns: bool

this.IsIte

Full Usage: this.IsIte

Returns: bool
Returns: bool

this.IsLoad

Full Usage: this.IsLoad

Returns: bool
Returns: bool

this.IsRelOp

Full Usage: this.IsRelOp

Returns: bool
Returns: bool

this.IsUnOp

Full Usage: this.IsUnOp

Returns: bool
Returns: bool

this.IsUndef

Full Usage: this.IsUndef

Returns: bool
Returns: bool

this.IsVar

Full Usage: this.IsVar

Returns: bool
Returns: bool

this.Type

Full Usage: this.Type

Returns: RegType

Return the bit width of the expression.

Returns: RegType

Type something to start searching.