- Oct 14, 2011
-
-
Benjamin Kramer authored
Passing a pointer was a bad idea as it collides with the overload for void*. llvm-svn: 141971
-
- Oct 11, 2011
-
-
Anna Zaks authored
llvm-svn: 141690
-
Anna Zaks authored
[analyzer] CheckerContext updates checkDst in it's destructor, so make sure the object is destructed before checkDst is used. llvm-svn: 141683
-
Anna Zaks authored
llvm-svn: 141678
-
Anna Zaks authored
[analyzer] Warn about the use of insecure, deprecated vfork() function PR11053 (http://llvm.org/bugs/show_bug.cgi?id=11053). A patch by Graham Lee! llvm-svn: 141643
-
Eli Friedman authored
llvm-svn: 141632
-
Ted Kremenek authored
llvm-svn: 141587
-
- Oct 10, 2011
-
-
Richard Smith authored
- Remodel Expr::EvaluateAsInt to behave like the other EvaluateAs* functions, and add Expr::EvaluateKnownConstInt to capture the current fold-or-assert behaviour. - Factor out evaluation of bitfield bit widths. - Fix a few places which would evaluate an expression twice: once to determine whether it is a constant expression, then again to get the value. llvm-svn: 141561
-
- Oct 08, 2011
-
-
Ted Kremenek authored
llvm-svn: 141433
-
Ted Kremenek authored
Remove AnalysisContext::getLiveVariables(), and introduce a templatized mechanism to lazily create analyses that are attached to AnalysisContext objects. llvm-svn: 141425
-
- Oct 07, 2011
-
-
Anna Zaks authored
[analyzer] Previously, we were passing to CheckerContext enough info to construct ProgramPoint and it would pass it to NodeBuilder, which in turn would construct the ProgramPoint. Simplify it by just passing the ProgramPoint to CheckerContext. The ProgramPoint can only change if a checker tags it, in which case, we create a copy with the given tag. (A step closer to making CheckerContext work with all node builders, not only StmtNodeBuilder.) llvm-svn: 141417
-
Anna Zaks authored
ProgramPoint cleanup after the previous commit r141408 (remove the copy constructor, mark withTag const). Move getProgramPoint() utility from CoreEngine.cpp into ProgramPoint. llvm-svn: 141414
-
John McCall authored
for better self-documenting code, since the semantics are subtly different from getDefinition(). llvm-svn: 141355
-
- Oct 06, 2011
-
-
Ted Kremenek authored
[static analyzer] Fix crash in LiveVariables and Environment::getSVal() when analyzing C++ pointer-to-member calls. Fixes <rdar://problem/10243398>. llvm-svn: 141312
-
Peter Collingbourne authored
llvm-svn: 141267
-
Anna Zaks authored
llvm-svn: 141262
-
Ted Kremenek authored
Fix major regression in RetainCountChecker. DefaultSummaries were not being used when they were meant to be. Fixes <rdar://problem/10241614>. llvm-svn: 141250
-
Anna Zaks authored
[analyzer] Remove the last dependency on CheckerContext::getNodeBuilder() as well as the method itself. Checkers should not directly access NodeBuilder, nodes can be created by calling the CheckerContext's generateNode() methods. llvm-svn: 141249
-
Anna Zaks authored
[analyzer] OSAtomicChecker implements evalCall in a very invasive way - it essentially simulates inlining of compareAndSwap() by means of setting the NodeBuilder flags and calling ExprEngine directly. This commit introduces a new callback just for this checker to unblock checker API cleanup. llvm-svn: 141246
-
- Oct 05, 2011
-
-
Anna Zaks authored
[analyzer] Removing more references to CheckerContext::getNodeBuilder(): ask CheckerContext to generate the nodes. llvm-svn: 141136
-
- Oct 04, 2011
-
-
Anna Zaks authored
[analyzer] Removing references to CheckerContext::getNodeBuilder(): checkers can obtain block count directly from the Context. llvm-svn: 141112
-
Anna Zaks authored
llvm-svn: 141098
-
Anna Zaks authored
[analyzer] Remove redundant state (AnalysisContext pointer for every BinaryOperator tracked) from IdempotentOperationChecker. llvm-svn: 141045
-
- Oct 03, 2011
-
-
Anna Zaks authored
[analyzer] In UndefBranchChecker, use a node generator which does not create an edge/branching. (ExprEngine should be in charge of generating edges. The checkers should examine the condition and generate PostCondition node if needed.) llvm-svn: 141034
-
Anna Zaks authored
- Remove unused FindUndefExpr::ProgramStateManager. - The Condition parameter of the callback is the terminator of the block, no need to retrieve it again. llvm-svn: 141027
-
Argyrios Kyrtzidis authored
Instead of always storing all source locations for the selector identifiers we check whether all the identifiers are in a "standard" position; "standard" position is -Immediately before the arguments: -(id)first:(int)x second:(int)y; -With a space between the arguments: -(id)first: (int)x second: (int)y; -For nullary selectors, immediately before ';': -(void)release; In such cases we infer the locations instead of storing them. llvm-svn: 140989
-
- Oct 02, 2011
-
-
Ted Kremenek authored
Fix LiveVariables analysis bug with MaterializeTemporaryExpr and fix handling in ExprEngine. Fixes <rdar://problem/10201666>. llvm-svn: 140956
-
- Oct 01, 2011
-
-
Anna Zaks authored
Address PR10616. The crash has already been fixed by Ted in r140725, so just refactor to use existing API + test case. llvm-svn: 140932
-
John McCall authored
to take a FunctionDecl* instead of an llvm::StringRef. Eventually we might push more logic in there, like using slightly different conventions for C++ methods. Also, fix a bug where 'copy' and 'create' were being caught in non-camel-cased strings. We want copyFoo and CopyFoo and XCopy but not Xcopy or xcopy. llvm-svn: 140911
-
- Sep 30, 2011
-
-
Ted Kremenek authored
Fix crash when analyzing C++ code involving constant enums and switch statements (<rdar://problem/10202899>). llvm-svn: 140844
-
Anna Zaks authored
[analyzer] Fix a bug in RetainReleaseChecker diagnostics. It gives more precise error message on the modified test case (and prevents duplicate diagnostics when we purge at block granularity). llvm-svn: 140840
-
Anna Zaks authored
[analyzer] Add -analyzer-purge option which can take on multiple values, remove -analyzer-purge=none. (Small refactor as well: move the work of constructing AnalysisManager from the callers to the class itself.) llvm-svn: 140838
-
- Sep 28, 2011
-
-
Ted Kremenek authored
llvm-svn: 140725
-
Anna Zaks authored
llvm-svn: 140648
-
- Sep 27, 2011
-
-
David Blaikie authored
llvm-svn: 140596
-
- Sep 26, 2011
-
-
David Blaikie authored
llvm-svn: 140492
-
David Blaikie authored
llvm-svn: 140478
-
- Sep 24, 2011
-
-
Benjamin Kramer authored
Patch by Rui Paulo! llvm-svn: 140448
-
- Sep 23, 2011
-
-
David Blaikie authored
llvm-svn: 140407
-
Anna Zaks authored
Move immutable map canonization out of the removeDeadBindings loop (via using ImmutableMapRef). Gives ~2% speedup. llvm-svn: 140403
-