let output () =
Pdg_parameters.set_debug_keys ["?"];
let do_kf_pdg kf =
let fname = Kernel_function.get_name kf in
if Pdg_parameters.BuildAll.get () ||
Datatype.String.Set.mem fname (Pdg_parameters.BuildFct.get ())
then
let pdg = !Db.Pdg.get kf in
let bw = Pdg_parameters.PrintBw.get () in
Pdg_parameters.result "@[%a@]" (!Db.Pdg.pretty ~bw) pdg;
let dot_basename = Pdg_parameters.DotBasename.get () in
if dot_basename <> "" then
!Db.Pdg.extract pdg (dot_basename ^ "." ^ fname ^ ".dot")
in
!Db.Semantic_Callgraph.topologically_iter_on_functions do_kf_pdg;
let ks = Pdg_parameters.get_debug_keyset () in
let pp_keys =
Pretty_utils.pp_flowlist ~left:"" ~sep:", " ~right:"."
Format.pp_print_string
in Pdg_parameters.debug ~level:1 "Logging keys : %a" pp_keys ks ;
if Pdg_parameters.BuildAll.get () then
Pdg_parameters.feedback "====== PDG GRAPH COMPUTED ======"