let reduce kf graph s =
let remove p s_postdom =
if StmtSet.mem p s_postdom
then
try
let p_postdom = get_postdom kf graph p in
let s_postdom = StmtSet.diff s_postdom p_postdom
in s_postdom
with Db.Postdominators.Top -> assert false
else s_postdom
in
try
let postdom = get_postdom kf graph s in
let postdom = StmtSet.fold remove postdom postdom in
Postdominators_parameters.debug "new postdom for %d:%a = %a\n"
s.sid pretty_stmt s StmtSet.pretty postdom;
InstrHashtbl.replace graph (Kstmt s) (Some postdom)
with Db.Postdominators.Top ->
()