# Module Profile

    module Profile: sig .. end

Compiler performance recording

Warning: this module is unstable and part of compiler-libs.

    type file = string

    val reset : unit -> unit

erase all recorded profile information

    val record_call : ?accumulate:bool -> string -> (unit -> 'a) -> 'a

`record_call pass f` calls `f` and records its profile information.

    val record : ?accumulate:bool -> string -> ('a -> 'b) -> 'a -> 'b

`record pass f arg` records the profile information of `f arg`

    type column = [ `Abs_top_heap | `Alloc | `Time | `Top_heap ]

    val print : Format.formatter -> column list -> unit

Prints the selected recorded profiling information to the formatter.

Command line flags

    val options_doc : string

    val all_columns : column list

A few pass names that are needed in several places, and shared to avoid typos.

    val generate : string

    val transl : string

    val typing : string