Arm_lifter.CPU
include module type of Arm_env
val spsr : Bap.Std.var
spsr
Saved Processor Status Register
val cpsr : Bap.Std.var
cpsr
Current Processor Status Register
val qf : Bap.Std.var
qf
underflow (saturation) Flag
val ge : Bap.Std.var array
ge
array of general registers
val itstate : Bap.Std.var
itstate
ITSTATE register
val lr : Bap.Std.var
lr
Link Register
val pc : Bap.Std.var
pc
Program Counter
val r0 : Bap.Std.var
general purpose register
val r1 : Bap.Std.var
general purpose register
val r2 : Bap.Std.var
general purpose register
val r3 : Bap.Std.var
general purpose register
val r4 : Bap.Std.var
general purpose register
val r5 : Bap.Std.var
general purpose register
val r6 : Bap.Std.var
general purpose register
val r7 : Bap.Std.var
general purpose register
val r8 : Bap.Std.var
general purpose register
val r9 : Bap.Std.var
general purpose register
val r10 : Bap.Std.var
general purpose register
val r11 : Bap.Std.var
general purpose register
val r12 : Bap.Std.var
general purpose register
val of_reg : Arm_types.reg -> Bap.Std.var
of_reg arm_reg
lifts arm register into BIL variable
val new_var : string -> Bap.Std.var
new_var name
creates a freshly new variable prefixed with name
include Bap.Std.CPU
val gpr : Bap.Std.Var.Set.t
A set of general purpose registers
val mem : Bap.Std.var
Memory
val sp : Bap.Std.var
Stack pointer
val zf : Bap.Std.var
zero flag
val cf : Bap.Std.var
carry flag
val vf : Bap.Std.var
overflow flag
val nf : Bap.Std.var
negative flag
val is_reg : Bap.Std.var -> bool
is_reg var
true if var
is a processor register
val is_flag : Bap.Std.var -> bool
is_flag reg
is true if reg
is a flag register
val is_sp : Bap.Std.var -> bool
is_sp x = Var.same x sp
val is_bp : Bap.Std.var -> bool
is_bp x
is true if x
can be possibly used as a base pointer register.
val is_zf : Bap.Std.var -> bool
is_zf x = Var.same x zf
val is_cf : Bap.Std.var -> bool
is_cf x = Var.same x cf
val is_vf : Bap.Std.var -> bool
is_vf x = Var.same x vf
val is_nf : Bap.Std.var -> bool
is_nf x = Var.same x nf
val is_mem : Bap.Std.var -> bool
is_mem x = Var.same x mem