[all-commits] [llvm/llvm-project] 44f98d: [clang][dataflow] Eliminate duplication between `A...
martinboehme via All-commits
all-commits at lists.llvm.org
Mon Jul 24 06:20:21 PDT 2023
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 44f98d0101fe82352e7c5fa98f1b2e9dc1159200
https://github.com/llvm/llvm-project/commit/44f98d0101fe82352e7c5fa98f1b2e9dc1159200
Author: Martin Braenne <mboehme at google.com>
Date: 2023-07-24 (Mon, 24 Jul 2023)
Changed paths:
M clang/include/clang/Analysis/FlowSensitive/DataflowEnvironment.h
M clang/include/clang/Analysis/FlowSensitive/StorageLocation.h
M clang/include/clang/Analysis/FlowSensitive/Value.h
M clang/lib/Analysis/FlowSensitive/DataflowAnalysisContext.cpp
M clang/lib/Analysis/FlowSensitive/DataflowEnvironment.cpp
M clang/lib/Analysis/FlowSensitive/HTMLLogger.cpp
M clang/lib/Analysis/FlowSensitive/Models/UncheckedOptionalAccessModel.cpp
M clang/lib/Analysis/FlowSensitive/RecordOps.cpp
M clang/lib/Analysis/FlowSensitive/Transfer.cpp
M clang/lib/Analysis/FlowSensitive/TypeErasedDataflowAnalysis.cpp
M clang/unittests/Analysis/FlowSensitive/RecordOpsTest.cpp
M clang/unittests/Analysis/FlowSensitive/TestingSupport.h
M clang/unittests/Analysis/FlowSensitive/TransferTest.cpp
Log Message:
-----------
[clang][dataflow] Eliminate duplication between `AggregateStorageLocation` and `StructValue`.
After this change, `StructValue` is just a wrapper for an `AggregateStorageLocation`. For the wider context, see https://discourse.llvm.org/t/70086.
## How to review
- Start by looking at the comments added / changed in Value.h, StorageLocation.h,
and DataflowEnvironment.h. This will give you a good overview of the semantic
changes.
- Look at the corresponding .cpp files that implement the semantic changes.
- Transfer.cpp, TypeErasedDataflowAnalysis.cpp, and RecordOps.cpp show how the
core of the framework is affected by the semantic changes.
- UncheckedOptionalAccessModel.cpp shows how this complex model is affected by
the changes.
- Many of the changes in the rest of the patch are mechanical in nature.
Reviewed By: ymandel, xazax.hun
Differential Revision: https://reviews.llvm.org/D155446
Commit: c3cf630d80a26a3bfc0845592f86e555addce3ca
https://github.com/llvm/llvm-project/commit/c3cf630d80a26a3bfc0845592f86e555addce3ca
Author: Martin Braenne <mboehme at google.com>
Date: 2023-07-24 (Mon, 24 Jul 2023)
Changed paths:
M clang/unittests/Analysis/FlowSensitive/TransferTest.cpp
Log Message:
-----------
[clang][dataflow] Remove checks that test for consistency between `StructValue` and `AggregateStorageLocation`.
Now that the redundancy between these two classes has been eliminated, these
checks aren't needed any more.
Reviewed By: ymandel, xazax.hun
Differential Revision: https://reviews.llvm.org/D155813
Compare: https://github.com/llvm/llvm-project/compare/4d02b472f1dc...c3cf630d80a2
More information about the All-commits
mailing list