8#ifndef LLVM_ADT_DAGDELTAALGORITHM_H 
    9#define LLVM_ADT_DAGDELTAALGORITHM_H 
   40  virtual void anchor();
 
   44  using edge_ty = std::pair<change_ty, change_ty>;
 
   66                   const std::vector<edge_ty> &Dependencies);
 
 
DAGDeltaAlgorithm - Implements a "delta debugging" algorithm for minimizing directed acyclic graphs u...
 
virtual bool ExecuteOneTest(const changeset_ty &S)=0
ExecuteOneTest - Execute a single test predicate on the change set S.
 
std::vector< changeset_ty > changesetlist_ty
 
std::set< change_ty > changeset_ty
 
std::pair< change_ty, change_ty > edge_ty
 
virtual void UpdatedSearchState(const changeset_ty &Changes, const changesetlist_ty &Sets, const changeset_ty &Required)
UpdatedSearchState - Callback used when the search state changes.
 
virtual ~DAGDeltaAlgorithm()=default
 
changeset_ty Run(const changeset_ty &Changes, const std::vector< edge_ty > &Dependencies)
Run - Minimize the DAG formed by the Changes vertices and the Dependencies edges by executing.
 
This is an optimization pass for GlobalISel generic memory operations.