let backward_data_scope allstmts modif_stmts s =
  States.clear ();
  List.iter (fun s -> States.add s State.NotSeen) allstmts;
  let modified s = StmtSetLattice.mem s modif_stmts in
  States.replace s State.Start;
  let stmts = s.preds in
  let module Computer = BackwardScope (struct let modified = modified endin
  let module Compute = Dataflow.Backwards(Computerin
  Compute.compute stmts