let combinePredecessors stmt ~old (new_:t) =
let new_state = computeFirstPredecessor stmt new_ in
let is_new, new_state = BuildPdg.test_and_merge_states old new_state in
if is_new then Some new_state
else (pdg_debug "fix point reached for sid:%d" stmt.sid; None)