let eliminate_additional table s =
let current_function = Stack.top call_stack in
(* Eliminate additional variables originating
from a branch closing at this statement. *)
StmtMap.fold
(fun k v (acc_set,acc_map,nb) ->
try
if !Postdominators.is_postdominator
current_function
~opening:k
~closing:s
then acc_set,acc_map,nb
else
(Zone.join v acc_set),
(StmtMap.add k v acc_map),nb+1
with e ->
From_parameters.fatal "internal error 356: (%s)Open:%d Close:%d"
(Printexc.to_string e) k.sid s.sid)
table
(Zone.bottom, StmtMap.empty,0)