Skip to content
Snippets Groups Projects
Commit 8be82aee authored by Allan Blanchard's avatar Allan Blanchard
Browse files

[wp] Clear CFG tables after WP

parent 09eca65f
No related branches found
No related tags found
No related merge requests found
...@@ -374,3 +374,12 @@ module LoopContract = WpContext.StaticGenerator(CodeKey) ...@@ -374,3 +374,12 @@ module LoopContract = WpContext.StaticGenerator(CodeKey)
let get_loop_contract kf stmt = LoopContract.get (kf,stmt) let get_loop_contract kf stmt = LoopContract.get (kf,stmt)
(* -------------------------------------------------------------------------- *) (* -------------------------------------------------------------------------- *)
(* --- Clear Tablesnts --- *)
(* -------------------------------------------------------------------------- *)
let clear () =
CallContract.clear () ;
LoopContract.clear () ;
CodeAssertions.clear ()
(* -------------------------------------------------------------------------- *)
...@@ -93,3 +93,9 @@ val get_precond_at : kernel_function -> stmt -> pred_info -> pred_info ...@@ -93,3 +93,9 @@ val get_precond_at : kernel_function -> stmt -> pred_info -> pred_info
val get_call_contract : kernel_function -> call_contract val get_call_contract : kernel_function -> call_contract
(* -------------------------------------------------------------------------- *) (* -------------------------------------------------------------------------- *)
(* --- Clear Tablesnts --- *)
(* -------------------------------------------------------------------------- *)
val clear : unit -> unit
(* -------------------------------------------------------------------------- *)
...@@ -213,6 +213,8 @@ struct ...@@ -213,6 +213,8 @@ struct
end end
(List.rev modes) (List.rev modes)
) task.modes ; ) task.modes ;
CfgAnnot.clear () ;
CfgInfos.clear () ;
!collection !collection
end end
......
...@@ -252,5 +252,6 @@ module Generator = WpContext.StaticGenerator(Key) ...@@ -252,5 +252,6 @@ module Generator = WpContext.StaticGenerator(Key)
end) end)
let get kf ?(bhv=[]) ?(prop=[]) () = Generator.get { kf ; bhv ; prop } let get kf ?(bhv=[]) ?(prop=[]) () = Generator.get { kf ; bhv ; prop }
let clear () = Generator.clear ()
(* -------------------------------------------------------------------------- *) (* -------------------------------------------------------------------------- *)
...@@ -30,6 +30,8 @@ module Cfg = Interpreted_automata ...@@ -30,6 +30,8 @@ module Cfg = Interpreted_automata
val get : Kernel_function.t -> ?bhv:string list -> ?prop:string list -> val get : Kernel_function.t -> ?bhv:string list -> ?prop:string list ->
unit -> t unit -> t
val clear : unit -> unit
val cfg : t -> Cfg.automaton option val cfg : t -> Cfg.automaton option
val annots : t -> bool val annots : t -> bool
val doomed : t -> WpPropId.prop_id Bag.t val doomed : t -> WpPropId.prop_id Bag.t
......
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