let add_caller ~caller:(caller_kf,call_site) kf =
  let add m =  KernelFunctionMap.add caller_kf (StmtSet.singleton call_site) m
  in
  let change m =
    try
      let call_sites = KernelFunctionMap.find caller_kf m in
      KernelFunctionMap.add caller_kf (StmtSet.add call_site call_sites) m
    with Not_found -> add m
  in
  ignore (Callers.memo ~change
            (fun _kf ->
               add KernelFunctionMap.empty)
            kf)