let add_loop_annots tbl cfg vloop ~entry ~back ~core =
  debug "[add_loop_annots]@.";
  let edges_to_head = Cil2cfg.succ_e cfg vloop in
    debug "[add_loop_annots] %d edges_to_head" (List.length edges_to_head);
  let edges_to_loop = Cil2cfg.pred_e cfg vloop in
    debug "[add_loop_annots] %d edges_to_loop" (List.length edges_to_loop);
  let back_edges, entry_edges =
    List.partition Cil2cfg.is_back_edge edges_to_loop
  in
    debug "[add_loop_annots] %d back_edges + %d entry_edges" 
      (List.length back_edges) (List.length entry_edges);
      add_on_edges tbl entry entry_edges;
  debug "[add_loop_annots on entry_edges ok]@.";
      add_on_edges tbl back back_edges;
  debug "[add_loop_annots on back_edges ok]@.";
      add_on_edges tbl core edges_to_head;
  debug "[add_loop_annots on edges_to_head ok]@."