- Aug 31, 2010
-
-
Ted Kremenek authored
llvm-svn: 112569
-
- Aug 30, 2010
-
-
Tom Care authored
- Fixed a regression where assigning '0' would be reported - Changed the way self assignments are filtered to allow constant testing - Added a test case for assign ops - Fixed one test case where a function pointer was not considered constant - Fixed test cases relating to 0 assignment llvm-svn: 112501
-
Alexis Hunt authored
some issues being sorted out. llvm-svn: 112493
-
- Aug 29, 2010
-
-
Alexis Hunt authored
The extra data stored on user-defined literal Tokens is stored in extra allocated memory, which is managed by the PreprocessorLexer because there isn't a better place to put it that makes sure it gets deallocated, but only after it's used up. My testing has shown no significant slowdown as a result, but independent testing would be appreciated. llvm-svn: 112458
-
Zhongxing Xu authored
llvm-svn: 112414
-
- Aug 28, 2010
-
-
Tom Care authored
Added checking of (x == x) and (x != x) to IdempotentOperationChecker and updated test cases flagged by it. llvm-svn: 112313
-
Tom Care authored
Enabled relaxed LiveVariables analysis in the path-sensitive engine to increase the coverage of bugs. Primarily affects IdempotentOperationChecker. - Migrated a temporarily separated test back to its original file (bug has been fixed, null-deref-ps-temp.c -> null-deref-ps.c) - Changed SymbolManager to use relaxed LiveVariables - Updated several test cases that the IdempotentOperationChecker class now flags - Added test case to test relaxed LiveVariables use by the IdempotentOperationChecker llvm-svn: 112312
-
Tom Care authored
llvm-svn: 112310
-
Tom Care authored
llvm-svn: 112309
-
- Aug 27, 2010
-
-
Ted Kremenek authored
Fix horrible GRExprEngine bug where switch statements with no 'case:' statements would cause the path to get prematurely aborted. Fixes <rdar://problem/8360854>. llvm-svn: 112233
-
Ted Kremenek authored
llvm-svn: 112229
-
- Aug 26, 2010
-
-
John McCall authored
This lets us remove Sema.h's dependency on Expr.h and Decl.h. llvm-svn: 112156
-
Chris Lattner authored
llvm-svn: 112132
-
- Aug 25, 2010
-
-
John McCall authored
to the new constants. llvm-svn: 112047
-
- Aug 24, 2010
-
-
Tom Care authored
- Added wasReferenced function to PseudoConstantAnalysis to determine if a variable was ever referenced in a function (outside of a self-assignment) - BlockDeclRefExpr referenced variables are now explicitly added to the non-constant list - Remove unnecessary ignore of implicit casts - Generalized parameter self-assign detection to detect deliberate self-assigns of variables to avoid unused variable warnings - Updated test cases with deliberate self-assignments - Fixed bug with C++ references and pseudoconstants - Added test case for C++ references and pseudoconstants llvm-svn: 111965
-
Zhongxing Xu authored
llvm-svn: 111897
-
- Aug 23, 2010
-
-
Tom Care authored
- Psuedo -> Pseudo (doh...) - C++ reference support - Added pseudoconstant test case for __block vars - Separated out static local checking from pseudoconstant analysis and generalized to non-local checking - Added missing test cases for storage false positives llvm-svn: 111832
-
Zhongxing Xu authored
llvm-svn: 111790
-
- Aug 22, 2010
-
-
Eli Friedman authored
llvm-svn: 111768
-
- Aug 21, 2010
-
-
Zhongxing Xu authored
llvm-svn: 111737
-
Zhongxing Xu authored
llvm-svn: 111736
-
Zhongxing Xu authored
llvm-svn: 111735
-
Zhongxing Xu authored
with the same binding key. The only trick here is that sometimes the Symbolic region is stored in with an LocAsInteger wrapper. We unwrap that in SVal::getAsLocSymbol(). llvm-svn: 111734
-
Zhongxing Xu authored
region and its base region as the same binding key. llvm-svn: 111732
-
Zhongxing Xu authored
llvm-svn: 111731
-
Zhongxing Xu authored
relavant any more, because we set its default value to a symbol, and the type of default symbolic value is irrelavant. llvm-svn: 111730
-
- Aug 20, 2010
-
-
Ted Kremenek authored
llvm-svn: 111616
-
Jordy Rose authored
llvm-svn: 111602
-
- Aug 19, 2010
-
-
Jordy Rose authored
llvm-svn: 111541
-
Sebastian Redl authored
llvm-svn: 111472
-
Alexis Hunt authored
Now all classes derived from Attr are generated from TableGen. Additionally, Attr* is no longer its own linked list; SmallVectors or Attr* are used. The accompanying LLVM commit contains the updates to TableGen necessary for this. Some other notes about newly-generated attribute classes: - The constructor arguments are a SourceLocation and a Context&, followed by the attributes arguments in the order that they were defined in Attr.td - Every argument in Attr.td has an appropriate accessor named getFoo, and there are sometimes a few extra ones (such as to get the length of a variadic argument). Additionally, specific_attr_iterator has been introduced, which will iterate over an AttrVec, but only over attributes of a certain type. It can be accessed through either Decl::specific_attr_begin/end or the global functions of the same name. llvm-svn: 111455
-
- Aug 18, 2010
-
-
Tom Care authored
Added psuedo-constant analysis and integrated it into the false positive reduction stage in IdempotentOperationChecker. - Renamed IdempotentOperationChecker::isConstant to isConstantOrPseudoConstant to better reflect the function - Changed IdempotentOperationChecker::PreVisitBinaryOperator to only run 'CanVary' once on undefined assumptions - Created new PsuedoConstantAnalysis class and added it to AnalysisContext - Changed IdempotentOperationChecker to exploit the new analysis - Updated tests with psuedo-constants - Added check to IdempotentOperationChecker to see if a Decl is const qualified llvm-svn: 111426
-
Jordy Rose authored
llvm-svn: 111353
-
Jordy Rose authored
llvm-svn: 111351
-
Chris Lattner authored
llvm-svn: 111347
-
Ted Kremenek authored
llvm-svn: 111327
-
Daniel Dunbar authored
llvm-svn: 111314
-
Ted Kremenek authored
llvm-svn: 111304
-
- Aug 17, 2010
-
-
Benjamin Kramer authored
and remove getStrData(). Patch by Peter Davies (with some tweaks). llvm-svn: 111229
-
Zhongxing Xu authored
llvm-svn: 111217
-