llvm-project/clang/unittests/Analysis/FlowSensitive
Yitzhak Mandelbaum c0725865b1 [clang][dataflow] Generalize custom comparison to return tri-value result.
Currently, the API for a model's custom value comparison returns a
boolean. Therefore, models cannot distinguish between situations where the
values are recognized by the model and different and those where the values are
just not recognized.  This patch changes the return value to a tri-valued enum,
allowing models to express "don't know".

This patch is essentially a NFC -- no practical differences result from this
change in this patch. But, it prepares for future patches (particularly,
upcoming patches for widening) which will take advantage of the new flexibility.

Differential Revision: https://reviews.llvm.org/D137334
2022-11-03 23:31:20 +00:00
..
CFGMatchSwitchTest.cpp [clang][dataflow] Generalise match switch utility to other AST types and add a `CFGMatchSwitch` which currently handles `CFGStmt` and `CFGInitializer`. 2022-09-01 10:15:53 +00:00
CMakeLists.txt [clang][dataflow] Implement transferBranch 2022-10-26 15:24:55 +02:00
ChromiumCheckModelTest.cpp [clang][dataflow] Modify `transfer` in `DataflowModel` to take `CFGElement` as input instead of `Stmt`. 2022-09-19 18:40:29 +00:00
DataflowAnalysisContextTest.cpp [clang][dataflow] Add support for a Top value in boolean formulas. 2022-10-14 17:41:53 +00:00
DataflowEnvironmentTest.cpp [clang][dataflow] Move NoopAnalysis from unittests to include 2022-07-22 14:11:32 +00:00
DebugSupportTest.cpp [clang][dataflow] Add explicit "AST" nodes for implications and iff 2022-07-26 14:19:22 +02:00
MapLatticeTest.cpp [clang][dataflow] Fix MapLattice::insert() to not drop return value 2022-07-25 14:24:33 -04:00
MatchSwitchTest.cpp [clang][dataflow] Refactor `clang/Analysis/FlowSensitive/MatchSwitchTest.cpp`. 2022-09-19 19:10:41 +00:00
MultiVarConstantPropagationTest.cpp [clang][dataflow] Replace `transfer(const Stmt *, ...)` with `transfer(const CFGElement *, ...)` in `clang/Analysis/FlowSensitive`. 2022-09-19 18:06:57 +00:00
SignAnalysisTest.cpp [clang][dataflow] Add initial sign analysis 2022-10-26 15:13:22 +02:00
SingleVarConstantPropagationTest.cpp [clang][dataflow] Replace `transfer(const Stmt *, ...)` with `transfer(const CFGElement *, ...)` in `clang/Analysis/FlowSensitive`. 2022-09-19 18:06:57 +00:00
SolverTest.cpp [clang][dataflow] Add support for a Top value in boolean formulas. 2022-10-14 17:41:53 +00:00
TestingSupport.cpp [clang][dataflow] Use `StringMap` for storing analysis states at annotated points instead of `vector<pair<string, StateT>>`. 2022-09-01 14:09:43 +00:00
TestingSupport.h [clang][dataflow] Implement transferBranch 2022-10-26 15:24:55 +02:00
TestingSupportTest.cpp [clang][dataflow] Replace usage of the deprecated overload of `checkDataflow`. 2022-09-16 16:19:07 +00:00
TransferBranchTest.cpp [clang][dataflow] Implement transferBranch 2022-10-26 15:24:55 +02:00
TransferTest.cpp [clang][dataflow] Add support for nested method calls. 2022-09-22 19:16:31 +00:00
TypeErasedDataflowAnalysisTest.cpp [clang][dataflow] Generalize custom comparison to return tri-value result. 2022-11-03 23:31:20 +00:00
UncheckedOptionalAccessModelTest.cpp [clang][dataflow] Replace usage of deprecated functions with the optional check 2022-09-19 17:33:25 +00:00
ValueTest.cpp [clang][dataflow] Add equivalence relation `Value` type. 2022-10-19 12:23:09 +00:00