clang 22.0.0git
SimplifyConstraints.cpp File Reference
#include "clang/Analysis/FlowSensitive/SimplifyConstraints.h"
#include "llvm/ADT/EquivalenceClasses.h"

Go to the source code of this file.

Namespaces

namespace  clang
 The JSON file list parser is used to communicate input to InstallAPI.
namespace  clang::dataflow
 Dataflow Directional Tag Classes.

Functions

static const Formulaclang::dataflow::substitute (const Formula &F, const llvm::DenseMap< Atom, const Formula * > &Substitutions, Arena &arena)
static llvm::DenseSet< Atomclang::dataflow::projectToLeaders (const llvm::DenseSet< Atom > &Atoms, llvm::EquivalenceClasses< Atom > &EquivalentAtoms)
static llvm::SmallVector< Atomclang::dataflow::atomsInEquivalenceClass (const llvm::EquivalenceClasses< Atom > &EquivalentAtoms, const Atom &At)
void clang::dataflow::simplifyConstraints (llvm::SetVector< const Formula * > &Constraints, Arena &arena, SimplifyConstraintsInfo *Info=nullptr)
 Simplifies a set of constraints (implicitly connected by "and") in a way that does not change satisfiability of the constraints.