llvm-project/clang/lib/StaticAnalyzer/Core
Valeriy Savchenko 02b51e5316 [analyzer][solver] Redesign constraint ranges data structure
ImmutableSet doesn't seem like the perfect fit for the RangeSet
data structure.  It is good for saving memory in a persistent
setting, but not for the case when the population of the container
is tiny.  This commit replaces RangeSet implementation and
redesigns the most common operations to be more efficient.

Differential Revision: https://reviews.llvm.org/D86465
2021-03-22 13:52:35 +03:00
..
APSIntType.cpp
AnalysisManager.cpp [analyzer] CheckerContext: Make the Preprocessor available 2020-01-30 17:05:52 +01:00
AnalyzerOptions.cpp [analyzer] NFC: Fix wrong parameter name in printFormattedEntry. 2020-08-27 12:15:26 -07:00
BasicValueFactory.cpp [analyzer] Fix static_cast on pointer-to-member handling 2021-02-15 11:44:37 +03:00
BlockCounter.cpp
BugReporter.cpp Correct Doxygen syntax for inline code 2021-03-16 15:17:45 +01:00
BugReporterVisitors.cpp Correct Doxygen syntax for inline code 2021-03-16 15:17:45 +01:00
CMakeLists.txt Revert "Revert "Revert "Revert "Revert "[analyzer] NFC: Move path diagnostic consumer implementations to libAnalysis.""""" 2021-01-08 14:17:18 +01:00
CallEvent.cpp [Ignore Expressions][NFC] Refactor to better use `IgnoreExpr.h` and nits 2020-09-07 09:32:30 +00:00
Checker.cpp [analyzer][NFC] Fix inconsistent references to checkers as "checks" 2019-09-12 19:09:24 +00:00
CheckerContext.cpp [clang][NFC] Use SmallString instead of SmallVector<char 2020-11-17 13:02:58 +00:00
CheckerHelpers.cpp [analyzer] Fix StdLibraryFunctionsChecker crash on macOS 2020-06-16 16:10:07 +03:00
CheckerManager.cpp [analyzer] Enable constructor support in evalCall event. 2020-06-25 09:47:13 -07:00
CheckerRegistryData.cpp [clang] Fix modules build after D82585 2020-07-06 17:51:53 +02:00
CommonBugCategories.cpp [analyzer] Introduce common bug category "Unused code". 2021-03-17 20:58:27 -07:00
ConstraintManager.cpp
CoreEngine.cpp [Analyzer][NFC] Remove the SubEngine interface 2020-05-26 19:56:55 +02:00
DynamicSize.cpp [analyzer] ApiModeling: Add buffer size arg constraint 2020-05-29 16:13:57 +02:00
DynamicType.cpp [analyzer] NFC: Store the pointee/referenced type for dynamic type tracking. 2020-08-27 12:15:23 -07:00
Environment.cpp [analyzer][Liveness][NFC] Get rid of statement liveness, because such a thing doesn't exist 2020-09-15 17:43:02 +02:00
ExplodedGraph.cpp [analyzer] Consider array subscripts to be interesting lvalues. 2020-04-23 19:52:45 +03:00
ExprEngine.cpp [OPENMP51]Initial support for the interop directive. 2021-03-17 09:42:07 -07:00
ExprEngineC.cpp [analyzer] Fix static_cast on pointer-to-member handling 2021-02-15 11:44:37 +03:00
ExprEngineCXX.cpp [Analyzer] Fix unused variable warning in Release builds 2020-09-25 14:09:43 +02:00
ExprEngineCallAndReturn.cpp Refactor and simplify class scope name lookup. 2020-11-25 16:25:33 -08:00
ExprEngineObjC.cpp [analyzer][NFC] Don't bind values to ObjCForCollectionStmt, replace it with a GDM trait 2020-09-11 15:58:48 +02:00
FunctionSummary.cpp
HTMLDiagnostics.cpp [SystemZ][z/OS] Distinguish between text and binary files on z/OS 2021-03-19 08:09:57 -04:00
LoopUnrolling.cpp [analyzer] LoopUnrolling: fix crash when a parameter is a loop counter. 2020-05-22 16:14:48 +03:00
LoopWidening.cpp [analyzer] LoopWidening: fix crash by avoiding aliased references invalidation 2020-06-09 12:55:54 +03:00
MemRegion.cpp [Analyzer] [NFC] Parameter Regions 2020-06-09 12:08:56 +02:00
PlistDiagnostics.cpp Correct Doxygen syntax for inline code 2021-03-16 15:17:45 +01:00
PrettyStackTraceLocationContext.h [analyzer] print() JSONify: Environment implementation 2019-05-29 15:36:58 +00:00
ProgramState.cpp [analyzer] Simplify function SVal::getAsSymbolicExpression and similar ones 2020-08-03 15:03:35 +03:00
RangeConstraintManager.cpp [analyzer][solver] Redesign constraint ranges data structure 2021-03-22 13:52:35 +03:00
RangedConstraintManager.cpp [analyzer][solver] Redesign constraint ranges data structure 2021-03-22 13:52:35 +03:00
RegionStore.cpp [analyzer] Allow bindings of the CompoundLiteralRegion 2020-05-28 14:11:57 +03:00
SMTConstraintManager.cpp [Analyzer][NFC] Remove the SubEngine interface 2020-05-26 19:56:55 +02:00
SValBuilder.cpp [analyzer] Fix a warning 2021-02-16 09:12:07 -08:00
SVals.cpp [analyzer] [NFC] Simplify SVal::getAsLocSymbol function using existing functions 2020-10-26 17:00:29 +02:00
SarifDiagnostics.cpp [analyzer] Create MacroExpansionContext member in AnalysisConsumer 2021-02-22 11:12:14 +01:00
SimpleConstraintManager.cpp [analyzer] Simplify function SVal::getAsSymbolicExpression and similar ones 2020-08-03 15:03:35 +03:00
SimpleSValBuilder.cpp [analyzer] Fix crash with pointer to members values 2020-08-13 18:03:59 +03:00
Store.cpp [Analyzer] [NFC] Parameter Regions 2020-06-09 12:08:56 +02:00
SymbolManager.cpp [analyzer][Liveness][NFC] Get rid of statement liveness, because such a thing doesn't exist 2020-09-15 17:43:02 +02:00
TextDiagnostics.cpp [analyzer] Create MacroExpansionContext member in AnalysisConsumer 2021-02-22 11:12:14 +01:00
WorkList.cpp [Clang] Migrate llvm::make_unique to std::make_unique 2019-08-14 23:04:18 +00:00