let get_init_funcs () =
let entry_point_name = Parameters.MainFunction.get () in
let init_funcs =
(* entry point is always a root *)
Cilutil.StringSet.add entry_point_name (InitFunc.get ())
in
(* Add the callees of entry point as roots *)
let callees =
let kf = fst (Globals.entry_point ()) in
!Db.Users.get kf
in
Kernel_function.Set.fold
(fun kf acc -> Cilutil.StringSet.add (Kernel_function.get_name kf) acc)
callees
init_funcs