Module Std.Event

Types of events.

val memory_load : Bap.Std.addr move Bap.Std.tag

an read access to a memory cell

val memory_store : Bap.Std.addr move Bap.Std.tag

a write access to a memory cell

val register_read : Bap.Std.var move Bap.Std.tag

a value was read from a given register

val register_write : Bap.Std.var move Bap.Std.tag

a value is written to the specified register

val timestamp : int64 Bap.Std.tag

this event can used to synchronize traces

val pc_update : Bap.Std.addr Bap.Std.tag

CPU PC register changed its value

val code_exec : chunk Bap.Std.tag

CPU loaded this memory chunk for execution. This event occurs just before the execution. All side effects of the code execution occurs after this event.

val context_switch : int Bap.Std.tag

operating system has performed context switching to a provided thread (process) id.

val syscall : syscall Bap.Std.tag

a system call has occurred

val exn : exn Bap.Std.tag

a software exception has occurred.

val call : call Bap.Std.tag

a control flow transfer from one procedure to another has occurred

val return : return Bap.Std.tag

a return from a call has occurred

val modload : modload Bap.Std.tag

a module (shared library) is dynamically linked into a host program.

val mode : mode Bap.Std.tag

the CPU mode used for future instructions has changed