You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
29 lines
1.0 KiB
29 lines
1.0 KiB
10 years ago
|
(*
|
||
|
* Copyright (c) 2009 -2013 Monoidics ltd.
|
||
|
* Copyright (c) 2013 - Facebook.
|
||
|
* All rights reserved.
|
||
|
*)
|
||
|
|
||
|
(** Interprocedural Analysis *)
|
||
|
|
||
|
(** Analyze [proc_name] and return the updated summary. Use module
|
||
|
{!Timeout } to call {!perform_analysis_phase } with a time limit, and
|
||
|
then return the updated summary. Executed as a child process. *)
|
||
|
val analyze_proc : Exe_env.t -> Procname.t -> Specs.summary
|
||
|
|
||
|
(** Process the result of the analysis of [proc_name]: update the
|
||
|
returned summary and add it to the spec table. Executed in the
|
||
|
parent process as soon as a child process returns a result. *)
|
||
|
val process_result : Exe_env.t -> (Procname.t * Cg.in_out_calls) -> Specs.summary -> unit
|
||
|
|
||
|
(** Return true if the analysis of [proc_name] should be
|
||
|
skipped. Called by the parent process before attempting to analyze a
|
||
|
proc. *)
|
||
|
val filter_out : Cg.t -> Procname.t -> bool
|
||
|
|
||
|
(** Perform the analysis of an exe_env *)
|
||
|
val do_analysis : Exe_env.t -> unit
|
||
|
|
||
|
(** Print the stats for all the files in the exe_env *)
|
||
|
val print_stats : Exe_env.t -> unit
|