[PATCH] D153805: Expose DataflowAnalysisContext.querySolver().

Sam McCall via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Fri Jun 30 09:42:17 PDT 2023


sammccall added inline comments.


================
Comment at: clang/include/clang/Analysis/FlowSensitive/DataflowAnalysisContext.h:183
+  /// been stored in flow conditions.
+  Solver::Result querySolver(llvm::DenseSet<BoolValue *> Constraints);
+
----------------
sammccall wrote:
> sammccall wrote:
> > FWIW, I'd probably prefer exposing the solver object itself, having all capabilities exposed directly through DataflowAnalysisContext gives it this ugly "god object" quality and the places that we want to use it really just need arena + solver.
> this should be ArrayRef<BoolValue*> now... sorry for the churn
I do think ArrayRef is the right signature here - SetVector is a slightly messy impl detail.

This would mean an unfortunate copy for now but that will go away, see D153485 (which is waiting on the Formula patch to land)


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D153805/new/

https://reviews.llvm.org/D153805



More information about the cfe-commits mailing list