Skip to content
Snippets Groups Projects
Commit 7cb1c057 authored by Jan Rochel's avatar Jan Rochel
Browse files

[alias] remove all deprecated functions

parent 8820f825
No related branches found
No related tags found
No related merge requests found
......@@ -58,7 +58,6 @@ module Statement = struct
let alias_sets_lvals ~stmt = get_list ~stmt Abstract_state.alias_sets_lvals
let alias_vars ~stmt lv = vars ~stmt (Abstract_state.alias_vars lv)
let alias_lvals ~stmt lv = lset ~stmt (Abstract_state.alias_lvals lv)
let aliases = alias_lvals (* deprecated *)
let new_aliases_lvals ~stmt lv =
let get_set state =
......@@ -76,13 +75,9 @@ module Statement = struct
let are_aliased ~stmt (lv1: lval) (lv2:lval) : bool =
(* TODO: more efficient algorithm: do they share a successor? *)
LSet.mem lv2 @@ aliases ~stmt lv1
LSet.mem lv2 @@ alias_lvals ~stmt lv1
end
let points_to_set_stmt _kf stmt = Statement.points_to_lvals ~stmt
let aliases_stmt _kf stmt = Statement.aliases ~stmt
module Function = struct
let return_stmt kf =
if Kernel_function.has_definition kf
......@@ -95,7 +90,6 @@ module Function = struct
let alias_sets_lvals ~kf = Statement.alias_sets_lvals ~stmt:(return_stmt kf)
let alias_vars ~kf = Statement.alias_vars ~stmt:(return_stmt kf)
let alias_lvals ~kf = Statement.alias_lvals ~stmt:(return_stmt kf)
let aliases = alias_lvals (* deprecated *)
let are_aliased ~kf = Statement.are_aliased ~stmt:(return_stmt kf)
let fundec_stmts ~kf lv =
......@@ -108,37 +102,13 @@ module Function = struct
Options.abort "fundec_stmts: function %a has no definition" Kernel_function.pretty kf
end
let points_to_set_kf kf = Function.points_to_lvals ~kf
let aliases_kf kf = Function.aliases ~kf
let fundec_stmts kf = Function.fundec_stmts ~kf
let fold_points_to_set f_fold acc kf s lv =
LSet.fold (fun e a -> f_fold a e) (points_to_set_stmt kf s lv) acc
let fold_aliases_stmt f_fold acc kf s lv =
LSet.fold (fun e a -> f_fold a e) (aliases_stmt kf s lv) acc
let fold_new_aliases_stmt f_fold acc _kf s lv =
LSet.fold (fun e a -> f_fold a e) (Statement.new_aliases_lvals ~stmt:s lv) acc
let fold_points_to_set_kf (f_fold: 'a -> lval -> 'a) (acc: 'a) (kf:kernel_function) (lv:lval) : 'a =
LSet.fold (fun e a -> f_fold a e) (points_to_set_kf kf lv) acc
let fold_aliases_kf (f_fold : 'a -> lval -> 'a) (acc : 'a) kf lv : 'a =
LSet.fold (fun e a -> f_fold a e) (aliases_kf kf lv) acc
let fold_fundec_stmts (f_fold: 'a -> stmt -> lval -> 'a) (acc: 'a) (kf:kernel_function) (lv:lval) : 'a =
List.fold_left
(fun acc (s, set) ->
LSet.fold (fun lv a -> f_fold a s lv) set acc
)
acc
(fundec_stmts kf lv)
let are_aliased (_kf: kernel_function) stmt = Statement.are_aliased ~stmt
(Function.fundec_stmts ~kf lv)
let fold_vertex (f_fold : 'a -> G.V.t -> lval -> 'a) (acc: 'a) (_kf: kernel_function) (s:stmt) (lv: lval) : 'a =
check_computed ();
......
......@@ -61,9 +61,6 @@ module Statement : sig
(** see [Abstract_state.alias_vars] *)
val alias_vars : stmt:stmt -> lval -> VarSet.t
val aliases : stmt:stmt -> lval -> LSet.t
[@@alert deprecated "Use Statement.alias_lvals instead!"]
(** see [Abstract_state.alias_lvals] *)
val alias_lvals : stmt:stmt -> lval -> LSet.t
......@@ -94,9 +91,6 @@ module Function : sig
(** see [Abstract_state.alias_vars] *)
val alias_vars : kf:kernel_function -> lval -> VarSet.t
val aliases : kf:kernel_function -> lval -> LSet.t
[@@alert deprecated "Use Function.alias_lvals instead!"]
(** see [Abstract_state.alias_lvals] *)
val alias_lvals : kf:kernel_function -> lval -> LSet.t
......@@ -107,43 +101,6 @@ module Function : sig
val fundec_stmts : kf:kernel_function -> lval -> (stmt * LSet.t) list
end
val points_to_set_stmt : kernel_function -> stmt -> lval -> LSet.t
[@@alert deprecated "Use Statement.points_to_vars or Statement.points_to_lvals instead!"]
val points_to_set_kf : kernel_function -> lval -> LSet.t
[@@alert deprecated "Use Function.points_to_vars or Function.points_to_lvals instead!"]
val aliases_stmt : kernel_function -> stmt -> lval -> LSet.t
[@@alert deprecated "Use Statement.aliases instead!"]
val aliases_kf : kernel_function -> lval -> LSet.t
[@@alert deprecated "Use Function.aliases instead!"]
val fundec_stmts : kernel_function -> lval -> (stmt * LSet.t) list
[@@alert deprecated "Use Function.fundec_stmts instead!"]
val fold_points_to_set:
('a -> lval -> 'a) -> 'a -> kernel_function -> stmt -> lval -> 'a
[@@alert deprecated "Use LSet.fold/Statement.points_to_lvals or VarSet.fold/Statement.points_to_vars instead!"]
val fold_aliases_stmt:
('a -> lval -> 'a) -> 'a -> kernel_function -> stmt -> lval -> 'a
[@@alert deprecated "Use LSet.fold and Statement.aliases instead!"]
val fold_new_aliases_stmt:
('a -> lval -> 'a) -> 'a -> kernel_function -> stmt -> lval -> 'a
[@@alert deprecated "Use Statement.new_aliases with LSet.fold instead!"]
val fold_points_to_set_kf :
('a -> lval -> 'a) -> 'a -> kernel_function -> lval -> 'a
[@@alert deprecated "Use LSet.fold/Function.points_to_lvals VarSet.fold/Function.points_to_vars instead!"]
(** [fold_aliases_kf f acc kf lv] folds [f acc] over all the aliases of lval
[lv] at the end of function [kf]. *)
val fold_aliases_kf:
('a -> lval -> 'a) -> 'a -> kernel_function -> lval -> 'a
[@@alert deprecated "Use LSet.fold/Function.aliases VarSet.fold/alias_vars instead!"]
(** [fold_fundec_stmts f acc kf v] folds [f acc s e] on the list of
pairs [s, e] where [e] is the set of lval aliased to [v] after statement [s]
......@@ -151,9 +108,6 @@ val fold_aliases_kf:
val fold_fundec_stmts:
('a -> stmt -> lval -> 'a) -> 'a -> kernel_function -> lval -> 'a
val are_aliased: kernel_function -> stmt -> lval -> lval -> bool
[@@alert deprecated "Use Statement.are_aliased instead!"]
(** [fold_vertex f acc kf s v] folds [f acc i lv] to all [lv] in [i], where [i] is
the vertex that represents the equivalence class of [v] before statement [s] in function [kf]. *)
val fold_vertex:
......@@ -227,9 +181,6 @@ module Abstract_state : sig
- [d] is in a neighbouring vertex, pointing to [c] as does <a,b> *)
val alias_vars : lval -> t -> VarSet.t
val find_aliases : lval -> t -> LSet.t
[@@alert deprecated "Use find_synonyms, alias_vars, or alias_lvals instead!"]
(** Yields all lvals that are an alias of a given lval [lv]. This includes:
- variables sharing an equivalence class (or: vertex) with [lv]
- variables from a neighbouring vertex, i.e. a vertex that shares a
......@@ -243,9 +194,6 @@ module Abstract_state : sig
- [*e] is obtained by following backwards the pointer edge from <d> to <e>. *)
val alias_lvals : lval -> t -> LSet.t
val find_all_aliases : lval -> t -> LSet.t
[@@alert deprecated "Use alias_lvals instead!"]
(** the set of all variables to which the given variable may point. *)
val points_to_vars : lval -> t -> VarSet.t
......@@ -254,9 +202,6 @@ module Abstract_state : sig
For some pointer p it will always include *p. *)
val points_to_lvals : lval -> t -> LSet.t
val points_to_set : lval -> t -> LSet.t
[@@alert deprecated "Use points_to_vars or points_to_lvals instead!"]
(** all the alias sets of a given state
Example: <a,b> → <c> ← <d> ← <e,f>
The aliases sets are <<a,b,d>, <e,f>>
......
......@@ -936,12 +936,9 @@ module API = struct
let get_lval_set = Readout.get_lval_set
let find_vars = Readout.find_vars
let find_synonyms = Readout.find_synonyms
let find_aliases = Readout.find_synonyms
let alias_vars = Readout.alias_vars
let alias_lvals = Readout.alias_lvals
let find_all_aliases = Readout.alias_lvals (* deprecated *)
let points_to_vars = Readout.points_to_vars
let points_to_set = Readout.points_to_lvals
let points_to_lvals = Readout.points_to_lvals
let alias_sets_vars = Readout.alias_sets_vars
let alias_sets_lvals = Readout.alias_sets_lvals
......
......@@ -54,23 +54,14 @@ val find_vertex : lval -> t -> v
val find_vars : lval -> t -> VarSet.t
val find_synonyms : lval -> t -> LSet.t
val find_aliases : lval -> t -> LSet.t
[@@alert deprecated "Use find_synonyms or alias_lvals instead!"]
val alias_vars : lval -> t -> VarSet.t
val alias_lvals : lval -> t -> LSet.t
val find_all_aliases : lval -> t -> LSet.t
[@@alert deprecated "Use alias_lvals instead!"]
val points_to_vars : lval -> t -> VarSet.t
val points_to_lvals : lval -> t -> LSet.t
val alias_sets_vars : t -> VarSet.t list
val alias_sets_lvals : t -> LSet.t list
val points_to_set : lval -> t -> LSet.t
[@@alert deprecated "Use points_to_vars or points_to_lvals instead!"]
val find_transitive_closure : lval -> t -> (v * LSet.t) list
val is_included : t -> t -> bool
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment