package mopsa

  1. Overview
  2. Docs
Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source

Module Ast.AddrSource

Heap addresses

Sourcetype addr_kind = ..

Kind of heap addresses, used to store extra information.

Sourceval addr_kind_compare_chain : (addr_kind -> addr_kind -> int) Stdlib.ref
Sourceval addr_kind_pp_chain : (Stdlib.Format.formatter -> addr_kind -> unit) Stdlib.ref
Sourceval pp_addr_kind : Stdlib.Format.formatter -> addr_kind -> unit
Sourceval compare_addr_kind : addr_kind -> addr_kind -> int
Sourceval register_addr_kind : addr_kind Mopsa_utils.TypeExt.info -> unit
Sourcetype addr_partitioning = ..

Addresses are grouped by static criteria to make them finite

Sourcetype addr_partitioning +=
  1. | G_all
    (*

    Group all addresses into one

    *)
Sourceval addr_partitioning_compare_chain : (addr_partitioning -> addr_partitioning -> int) Stdlib.ref
Sourceval addr_partitioning_pp_chain : (Stdlib.Format.formatter -> addr_partitioning -> unit) Stdlib.ref
Sourceval opt_hash_addr : bool Stdlib.ref

Command line option to use hashes as address format

Sourceval pp_addr_partitioning_hash : Stdlib.Format.formatter -> addr_partitioning -> unit
Sourceval pp_addr_partitioning : ?full:bool -> Stdlib.Format.formatter -> addr_partitioning -> unit

Print a partitioning policy. Flag full overloads the option opt_hash_addr and displays the full partitioning string (not its hash, which is useful for creating unique names of addresses)

Sourceval pp_addr_partitioning_full : Stdlib.Format.formatter -> addr_partitioning -> unit
Sourceval compare_addr_partitioning : addr_partitioning -> addr_partitioning -> int
Sourceval register_addr_partitioning : addr_partitioning Mopsa_utils.TypeExt.info -> unit
Sourcetype addr = {
  1. addr_kind : addr_kind;
    (*

    Kind of the address.

    *)
  2. addr_partitioning : addr_partitioning;
    (*

    Partitioning policy of the address

    *)
  3. addr_mode : Var.mode;
    (*

    Assignment mode of address (string or weak)

    *)
}

Heap addresses.

Sourceval akind : addr -> addr_kind
Sourceval pp_addr : Stdlib.Format.formatter -> addr -> unit
Sourceval addr_uniq_name : addr -> string

Get the unique name of an address. This is safer and faster than calling Format.asprintf "%s" pp_addr a when opt_hash_addr is set.

Sourceval compare_addr : addr -> addr -> int
Sourceval addr_mode : addr -> Var.mode option -> Var.mode
Sourcetype Var.var_kind +=
  1. | V_addr_attr of addr * string

Address variables

Sourceval mk_addr_attr : addr -> string -> Typ.typ -> Var.var
OCaml

Innovation. Community. Security.