B2R2


VariableKind Type

Type representing destination of an assignment.

Union cases

Union case Description

GlobalVar(RegType, Addr)

Full Usage: GlobalVar(RegType, Addr)

Parameters:

Global variables. This variable is available only after the SSA promotion.

Item1 : RegType
Item2 : Addr

MemVar

Full Usage: MemVar

The whole memory as a var (an over-approximated instance). Whenever there is a memory store op, we update MemVar.

PCVar RegType

Full Usage: PCVar RegType

Parameters:

PC.

Item : RegType

RegVar(RegType, RegisterID, string)

Full Usage: RegVar(RegType, RegisterID, string)

Parameters:

Register.

Item1 : RegType
Item2 : RegisterID
Item3 : string

StackVar(RegType, offset)

Full Usage: StackVar(RegType, offset)

Parameters:

Stack variables. This variable is available only after the SSA promotion, which basically translates every memory load/store expression with a concrete address into either a StackVar or a GlobalVar.

Item1 : RegType
offset : int

TempVar(RegType, int)

Full Usage: TempVar(RegType, int)

Parameters:

Temporary variables.

Item1 : RegType
Item2 : int

Static members

Static member Description

VariableKind.toString

Full Usage: VariableKind.toString

Returns: VariableKind -> string
Returns: VariableKind -> string