This revision was automatically updated to reflect the committed changes.
Closed by commit rGac3edc5af099: [analyzer][solver] Handle simplification to
ConcreteInt (authored by martong).
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D110913/new/
https
steakhal accepted this revision.
steakhal added a comment.
This revision is now accepted and ready to land.
I love this! The coverage is great and looks good.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D110913/new/
https://reviews.llvm.org/D11091
martong added inline comments.
Comment at:
clang/include/clang/StaticAnalyzer/Core/PathSensitive/RangedConstraintManager.h:392-397
+/// Try to simplify a given symbolic expression based on the constraints in
+/// State. This is needed because the Environment bindings are not get
martong updated this revision to Diff 379434.
martong marked 5 inline comments as done.
martong added a comment.
- Use getAsSymbol to initialize the simplified member symbol
- Add some more explanation to ento::simplify
- Add a comment about checking only feasiblity
- Add a new test case for the "
steakhal added a comment.
Looks good to me. I very much like this.
Check my nits inline. Given those are fixed I'm gonna accept this.
Comment at:
clang/include/clang/StaticAnalyzer/Core/PathSensitive/RangedConstraintManager.h:392-397
+/// Try to simplify a given symbolic expre
martong added inline comments.
Comment at: clang/test/Analysis/solver-sym-simplification-concreteint.c:22
+ // c == 0 --> 0 + 1 == 0 contradiction
+ clang_analyzer_eval(c == 0);// expected-warning{{FALSE}}
+
martong wrote:
> steakhal wrote:
> > Could we hav
martong updated this revision to Diff 378994.
martong marked an inline comment as done.
martong added a comment.
- Make the test case way simpler (and independent from other solver patches)
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D110913/new/
martong marked 2 inline comments as done.
martong added inline comments.
Comment at: clang/lib/StaticAnalyzer/Core/RangeConstraintManager.cpp:2104
+ const llvm::APSInt &SV = CI->getValue();
+ const RangeSet *ClassConstraint = getConstraint(State, Class);
+ // We ha
ASDenysPetrov added inline comments.
Comment at: clang/lib/StaticAnalyzer/Core/RangeConstraintManager.cpp:2099-2111
+
+SymbolRef SimplifiedMemberSym = nullptr;
+SVal SimplifiedMemberVal = simplifyToSVal(State, MemberSym);
+if (const auto CI = SimplifiedMemberVal.getAs
ASDenysPetrov added inline comments.
Comment at: clang/lib/StaticAnalyzer/Core/RangeConstraintManager.cpp:2104
+ const llvm::APSInt &SV = CI->getValue();
+ const RangeSet *ClassConstraint = getConstraint(State, Class);
+ // We have found a contradiction.
--
martong added inline comments.
Comment at:
clang/include/clang/StaticAnalyzer/Core/PathSensitive/RangedConstraintManager.h:390-396
/// Try to simplify a given symbolic expression's associated value based on the
/// constraints in State. This is needed because the Environment b
martong updated this revision to Diff 377495.
martong marked 2 inline comments as done.
martong added a comment.
- Add better comments to `simplify` functions
- Add a new check and explanation to the test file
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llv
steakhal added a comment.
The patch seems reasonable, but I will need slightly more time to digest it.
I'll get back to this.
Comment at:
clang/include/clang/StaticAnalyzer/Core/PathSensitive/RangedConstraintManager.h:390-396
/// Try to simplify a given symbolic expression's
martong created this revision.
martong added reviewers: steakhal, ASDenysPetrov, manas, NoQ, vsavchenko.
Herald added subscribers: gamesh411, dkrupp, donat.nagy, Szelethus,
mikhail.ramalho, a.sidorin, rnkovacs, szepet, baloghadamsoftware, xazax.hun,
whisperity.
Herald added a reviewer: Szelethus.
14 matches
Mail list logo