File: callsite.ml

package info (click to toggle)
frama-c 20161101%2Bsilicon%2Bdfsg-5
  • links: PTS, VCS
  • area: main
  • in suites: stretch
  • size: 42,324 kB
  • ctags: 35,695
  • sloc: ml: 200,142; ansic: 31,465; makefile: 2,334; sh: 1,643; lisp: 259; python: 85; asm: 26
file content (19 lines) | stat: -rw-r--r-- 476 bytes parent folder | download | duplicates (7)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
open Cil_types

let dump f =
  let kf = Globals.Functions.find_by_name f in
  let csites = Kernel_function.find_syntactic_callsites kf in
  Log.print_on_output
    (fun fmt ->
       Format.fprintf fmt "Call Sites for %s:@\n" f ;
       List.iter
	 (fun (ckf,stmt) ->
	    Format.fprintf fmt "  - From %s at #%03d@\n"
	      (Kernel_function.get_name ckf)  stmt.sid)
	 csites)

let main () =
  Ast.compute () ;
  List.iter dump ["f";"g";"h";"k"]

let () = Db.Main.extend main