let find_available kinstr =
  if Parameters.Dynamic.Bool.get "-deps"
  then begin
      try
        Callwise_Dependencies.find kinstr
      with Not_found ->
        From_parameters.fatal "internal error 457 : From.find_available called on non-Call statement, or called too early."
    end
  else begin
      match kinstr with
      | Kstmt ({skind = Instr(Call (_,funcexp,_,_))}) ->
          let _, called_functions =
            !Value.expr_to_kernel_function
              ~with_alarms:CilE.warn_none_mode
              kinstr ~deps:None funcexp
          in
          let treat_kf _kf acc =
            let kf_froms = (assert false)
            in
            match acc with
              None -> Some kf_froms
            | Some froms ->
                Some (Function_Froms.join kf_froms froms)
          in
          let froms =
            List.fold_right treat_kf called_functions None
          in
          begin
            match froms with
              None -> assert false (* TODO: do something *)
            | Some f -> f
          end
      | _ ->
          From_parameters.fatal "internal error 458 : From.find_available called on non-Call statement."
    end