From ffadf7f6f8a113fbcc42a2be36d2dd5c841d48e3 Mon Sep 17 00:00:00 2001 From: Stavros Aronis Date: Thu, 16 Feb 2012 16:03:51 +0100 Subject: Moving code between callgraph & dataflow --- lib/dialyzer/src/dialyzer_callgraph.erl | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'lib/dialyzer/src/dialyzer_callgraph.erl') diff --git a/lib/dialyzer/src/dialyzer_callgraph.erl b/lib/dialyzer/src/dialyzer_callgraph.erl index 1cbb83a44a..ddda27adb4 100644 --- a/lib/dialyzer/src/dialyzer_callgraph.erl +++ b/lib/dialyzer/src/dialyzer_callgraph.erl @@ -48,6 +48,7 @@ get_required_by/2, in_neighbours/2, renew_race_info/4, + renew_race_code/2, reset_from_funs/2, scan_core_tree/2, strip_module_deps/2, @@ -239,6 +240,14 @@ renew_race_info(CG, RaceCode, PublicTables, NamedTables) -> public_tables = PublicTables, named_tables = NamedTables}. +-spec renew_race_code(dialyzer_races:races(), callgraph()) -> callgraph(). + +renew_race_code(Races, #callgraph{race_code = RaceCode} = Callgraph) -> + Fun = dialyzer_races:get_curr_fun(Races), + FunArgs = dialyzer_races:get_curr_fun_args(Races), + Code = lists:reverse(dialyzer_races:get_race_list(Races)), + Callgraph#callgraph{race_code = dict:store(Fun, [FunArgs, Code], RaceCode)}. + -spec get_depends_on(scc(), callgraph()) -> [scc()]. get_depends_on(SCC, #callgraph{active_digraph = DG}) -> -- cgit v1.2.3