[PATCH] D63720: [analyzer] ExprEngine: Escape pointers in bitwise operations

2019-06-24 Thread Csaba Dabis via Phabricator via cfe-commits
Charusso added a comment. Thanks for the review ! That was the largest-work three lines of code of the history because I was blind. Repository: rL LLVM CHANGES SINCE LAST ACTION https://reviews.llvm.org/D63720/new/ https://reviews.llvm.org/D63720 ___

[PATCH] D63720: [analyzer] ExprEngine: Escape pointers in bitwise operations

2019-06-24 Thread Csaba Dabis via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL364259: [analyzer] ExprEngine: Escape pointers in bitwise operations (authored by Charusso, committed by ). Herald added a project: LLVM. Herald added a subscriber: llvm-commits. Changed prior to commit:

[PATCH] D63720: [analyzer] ExprEngine: Escape pointers in bitwise operations

2019-06-24 Thread Csaba Dabis via Phabricator via cfe-commits
Charusso updated this revision to Diff 206344. Charusso marked an inline comment as done. Charusso added a comment. - Better comment. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D63720/new/ https://reviews.llvm.org/D63720 Files: clang/lib/StaticAnalyzer/Core/ExprEngineC.cpp clang/

[PATCH] D63720: [analyzer] ExprEngine: Escape pointers in bitwise operations

2019-06-24 Thread Artem Dergachev via Phabricator via cfe-commits
NoQ accepted this revision. NoQ added a comment. This revision is now accepted and ready to land. Great, thanks! Comment at: clang/lib/StaticAnalyzer/Core/ExprEngineC.cpp:104 + + // If we cannot evaluate the operation escape the operands. + } else { P

[PATCH] D63720: [analyzer] ExprEngine: Escape pointers in bitwise operations

2019-06-24 Thread Csaba Dabis via Phabricator via cfe-commits
Charusso updated this revision to Diff 206341. Charusso marked 8 inline comments as done. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D63720/new/ https://reviews.llvm.org/D63720 Files: clang/lib/StaticAnalyzer/Core/ExprEngineC.cpp clang/test/Analysis/symbol-escape.cpp Index: clang

[PATCH] D63720: [analyzer] ExprEngine: Escape pointers in bitwise operations

2019-06-24 Thread Csaba Dabis via Phabricator via cfe-commits
Charusso added inline comments. Comment at: clang/lib/StaticAnalyzer/Core/ExprEngineC.cpp:123 state = state->BindExpr(B, LCtx, Result); } NoQ wrote: > Charusso wrote: > > I have seen we are producing tons of Unknowns and I am still not sure wher

[PATCH] D63720: [analyzer] ExprEngine: Escape pointers in bitwise operations

2019-06-24 Thread Artem Dergachev via Phabricator via cfe-commits
NoQ added inline comments. Comment at: clang/lib/StaticAnalyzer/Core/ExprEngineC.cpp:123 state = state->BindExpr(B, LCtx, Result); } Charusso wrote: > I have seen we are producing tons of Unknowns and I am still not sure where > they go, but ev

[PATCH] D63720: [analyzer] ExprEngine: Escape pointers in bitwise operations

2019-06-24 Thread Csaba Dabis via Phabricator via cfe-commits
Charusso marked an inline comment as done. Charusso added inline comments. Comment at: clang/lib/StaticAnalyzer/Core/ExprEngineC.cpp:103 +if (const MemRegion *LeftMR = LeftV.getAsRegion()) + IsLhsPtr = LeftMR->getSymbolicBase(); +if (const MemRegion *Righ

[PATCH] D63720: [analyzer] ExprEngine: Escape pointers in bitwise operations

2019-06-24 Thread Csaba Dabis via Phabricator via cfe-commits
Charusso updated this revision to Diff 206332. Charusso marked 11 inline comments as done. Charusso added a comment. - Fix. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D63720/new/ https://reviews.llvm.org/D63720 Files: clang/lib/StaticAnalyzer/Core/ExprEngineC.cpp clang/test/Analy

[PATCH] D63720: [analyzer] ExprEngine: Escape pointers in bitwise operations

2019-06-24 Thread Artem Dergachev via Phabricator via cfe-commits
NoQ added a comment. Nice!~ I'm glad this is getting sorted out. Comment at: clang/lib/StaticAnalyzer/Core/ExprEngineC.cpp:103 +if (const MemRegion *LeftMR = LeftV.getAsRegion()) + IsLhsPtr = LeftMR->getSymbolicBase(); +if (const MemRegion *RightMR = Ri

[PATCH] D63720: [analyzer] ExprEngine: Escape pointers in bitwise operations

2019-06-24 Thread Csaba Dabis via Phabricator via cfe-commits
Charusso marked an inline comment as done. Charusso added inline comments. Comment at: clang/lib/StaticAnalyzer/Core/ExprEngineC.cpp:123 state = state->BindExpr(B, LCtx, Result); } I have seen we are producing tons of Unknowns and I am still not

[PATCH] D63720: [analyzer] ExprEngine: Escape pointers in bitwise operations

2019-06-24 Thread Csaba Dabis via Phabricator via cfe-commits
Charusso added a comment. These bitwise operations only affects the part which we do not analyze. My previous approach to solve this problem caused one false positive, so we should be that strict. Just in case for the future developments, copy-pasted here: // If we have a bitwise operation (e

[PATCH] D63720: [analyzer] ExprEngine: Escape pointers in bitwise operations

2019-06-24 Thread Csaba Dabis via Phabricator via cfe-commits
Charusso added a comment. - Make the test fail. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D63720/new/ https://reviews.llvm.org/D63720 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo

[PATCH] D63720: [analyzer] ExprEngine: Escape pointers in bitwise operations

2019-06-24 Thread Csaba Dabis via Phabricator via cfe-commits
Charusso updated this revision to Diff 206227. Charusso added a comment. - Make the test pass. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D63720/new/ https://reviews.llvm.org/D63720 Files: clang/lib/StaticAnalyzer/Core/ExprEngineC.cpp clang/test/Analysis/symbol-escape.cpp Index

[PATCH] D63720: [analyzer] ExprEngine: Escape pointers in bitwise operations

2019-06-24 Thread Csaba Dabis via Phabricator via cfe-commits
Charusso created this revision. Charusso added reviewers: NoQ, xazax.hun, ravikandhadai, baloghadamsoftware, Szelethus. Charusso added a project: clang. Herald added subscribers: cfe-commits, dkrupp, donat.nagy, mikhail.ramalho, a.sidorin, rnkovacs, szepet. After evaluation it would be an Unknow