You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
- renamed: `src/analyses/wp_test.ml` -> `src/analyses/wp_analyses/liveness.ml`
- modified `src/framework/control.ml` by replacing the standard AnalyzeCFG-module with the one from the upstream repository since I meddled in that one
(* Logs.debug "=== combine_assign of function %s ===" f.svar.vname;
116
-
(*how do I know which args are important? i.e. how do I match the local name of the variable in the function with the passed parameters (if there are several)*)
117
-
let args_pretty = String.concat ", " (List.map CilType.Exp.show args) in
118
-
Logs.debug " args: %s" args_pretty; *)
119
-
120
-
letsimple_assignlvalexpacc=
121
-
let v = vars_from_lval lval in
122
-
123
-
match v with
124
-
|None -> acc (*D.join acc (vars_from_expr exp) if I do not know what the value is assigned to, then all RHS-Variables might be relevant *)
125
-
|Somev ->
126
-
let l = (D.diff acc (D.singleton v)) in
127
-
(* if D.mem v acc then D.join l (vars_from_expr exp)
(** A transfer function which handles the return statement, i.e.,
139
-
"return exp" or "return" in the passed function (fundec) *)
140
-
letreturnman (exp: exp option) (f:fundec) : D.t =
141
-
let return_val_is_important = (not (D.is_bot man.local)) || (String.equal f.svar.vname "main") in(*this does not take globals int account, only checks for "temp"*)
0 commit comments