[clang][dataflow] Add widening API and implement it for built-in boolean model.
* Adds API support for widening of lattice elements and environments, * Updates the algorithm to apply widening where appropriate, * Implements widening for boolean values. In the process, moves the unsoundness of comparison from the default implementation of `Environment::ValueModel::compare` to model-specific handling inside `DataflowEnvironment::equivalentTo`. This change is intended to clarify the source and location of unsoundess. This patch is a replacement for, and was based substantially on, https://reviews.llvm.org/D131645. Differential Revision: https://reviews.llvm.org/D137948
Loading
Please sign in to comment