Mikhail R. Gadelha
							
						 
						
							 
							
							
							
							
								
							
							
								e254b0f8c7 
								
							 
						 
						
							
							
								
								[analyzer] Fix constraint being dropped when analyzing a program without taint tracking enabled  
							
							 
							
							... 
							
							
							
							Summary:
This patch removes the constraint dropping when taint tracking is disabled.
It also voids the crash reported in D28953 by treating a SymSymExpr with non pointer symbols as an opaque expression.
Updated the regressions and verifying the big projects now; I'll update here when they're done.
Based on the discussion on the mailing list and the patches by @ddcc .
Reviewers: george.karpenkov, NoQ, ddcc, baloghadamsoftware
Reviewed By: george.karpenkov
Subscribers: delcypher, llvm-commits, rnkovacs, xazax.hun, szepet, a.sidorin, ddcc
Differential Revision: https://reviews.llvm.org/D48650 
llvm-svn: 337167 
							
						 
						
							2018-07-16 13:14:46 +00:00  
						
					 
				
					
						
							
							
								 
								Gabor Horvath
							
						 
						
							 
							
							
							
							
								
							
							
								596fcb1b0f 
								
							 
						 
						
							
							
								
								[analyzer] Model and check unrepresentable left shifts  
							
							 
							
							... 
							
							
							
							Patch by: Reka Nikolett Kovacs
Differential Revision: https://reviews.llvm.org/D41816 
llvm-svn: 323115 
							
						 
						
							2018-01-22 13:32:10 +00:00  
						
					 
				
					
						
							
							
								 
								Gabor Horvath
							
						 
						
							 
							
							
							
							
								
							
							
								4581f7497b 
								
							 
						 
						
							
							
								
								[analyzer] Left shifting a negative value is undefined  
							
							 
							
							... 
							
							
							
							The analyzer did not return an UndefVal in case a negative value was left
shifted. I also altered the UndefResultChecker to emit a clear warning in this
case.
Differential Revision: https://reviews.llvm.org/D39423 
llvm-svn: 316924 
							
						 
						
							2017-10-30 17:06:42 +00:00  
						
					 
				
					
						
							
							
								 
								Daniel Marjamaki
							
						 
						
							 
							
							
							
							
								
							
							
								d3d83681bc 
								
							 
						 
						
							
							
								
								[Analyzer] Clarify error messages for undefined result  
							
							 
							
							... 
							
							
							
							Differential Revision: https://reviews.llvm.org/D30295 
llvm-svn: 315462 
							
						 
						
							2017-10-11 14:49:35 +00:00  
						
					 
				
					
						
							
							
								 
								Dominic Chen
							
						 
						
							 
							
							
							
							
								
							
							
								c0402c6916 
								
							 
						 
						
							
							
								
								Revert "[analyzer] Support generating and reasoning over more symbolic constraint types"  
							
							 
							
							... 
							
							
							
							Assertion `Loc::isLocType(SSE->getLHS()->getType())' failed in Analysis/PR3991.m
This reverts commit e469ff2759275e67f9072b3d67fac90f647c0fe6.
llvm-svn: 307853 
							
						 
						
							2017-07-12 21:43:42 +00:00  
						
					 
				
					
						
							
							
								 
								Dominic Chen
							
						 
						
							 
							
							
							
							
								
							
							
								35610d21b2 
								
							 
						 
						
							
							
								
								[analyzer] Support generating and reasoning over more symbolic constraint types  
							
							 
							
							... 
							
							
							
							Summary: Generate more IntSymExpr constraints, perform SVal simplification for IntSymExpr and SymbolCast constraints, and create fully symbolic SymExprs
Reviewers: zaks.anna, dcoughlin, NoQ, xazax.hun
Subscribers: mgorny, cfe-commits
Differential Revision: https://reviews.llvm.org/D28953 
llvm-svn: 307833 
							
						 
						
							2017-07-12 19:37:57 +00:00  
						
					 
				
					
						
							
							
								 
								Dominic Chen
							
						 
						
							 
							
							
							
							
								
							
							
								184c6242fa 
								
							 
						 
						
							
							
								
								Reland 4: [analyzer] NFC: Update test infrastructure to support multiple constraint managers  
							
							 
							
							... 
							
							
							
							Summary: Replace calls to %clang/%clang_cc1 with %clang_analyze_cc1 when invoking static analyzer, and perform runtime substitution to select the appropriate constraint manager, per D28952.
Reviewers: xazax.hun, NoQ, zaks.anna, dcoughlin
Subscribers: mgorny, rgov, mikhail.ramalho, a.sidorin, cfe-commits
Differential Revision: https://reviews.llvm.org/D30373 
llvm-svn: 296895 
							
						 
						
							2017-03-03 18:02:02 +00:00  
						
					 
				
					
						
							
							
								 
								Dominic Chen
							
						 
						
							 
							
							
							
							
								
							
							
								09d66f7528 
								
							 
						 
						
							
							
								
								Revert "Reland 3: [analyzer] NFC: Update test infrastructure to support multiple constraint managers"  
							
							 
							
							... 
							
							
							
							This reverts commit ea36f1406e1f36bf456c3f3929839b024128e468.
llvm-svn: 296841 
							
						 
						
							2017-03-02 23:30:53 +00:00  
						
					 
				
					
						
							
							
								 
								Dominic Chen
							
						 
						
							 
							
							
							
							
								
							
							
								feaf9ff5ee 
								
							 
						 
						
							
							
								
								Reland 3: [analyzer] NFC: Update test infrastructure to support multiple constraint managers  
							
							 
							
							... 
							
							
							
							Summary: Replace calls to %clang/%clang_cc1 with %clang_analyze_cc1 when invoking static analyzer, and perform runtime substitution to select the appropriate constraint manager, per D28952.
Reviewers: xazax.hun, NoQ, zaks.anna, dcoughlin
Subscribers: mgorny, rgov, mikhail.ramalho, a.sidorin, cfe-commits
Differential Revision: https://reviews.llvm.org/D30373 
llvm-svn: 296837 
							
						 
						
							2017-03-02 23:05:45 +00:00  
						
					 
				
					
						
							
							
								 
								Dominic Chen
							
						 
						
							 
							
							
							
							
								
							
							
								4a90bf8c3f 
								
							 
						 
						
							
							
								
								Revert "Reland 2: [analyzer] NFC: Update test infrastructure to support multiple constraint managers"  
							
							 
							
							... 
							
							
							
							This reverts commit f93343c099fff646a2314cc7f4925833708298b1.
llvm-svn: 296836 
							
						 
						
							2017-03-02 22:58:06 +00:00  
						
					 
				
					
						
							
							
								 
								Dominic Chen
							
						 
						
							 
							
							
							
							
								
							
							
								1cb0256a3c 
								
							 
						 
						
							
							
								
								Reland 2: [analyzer] NFC: Update test infrastructure to support multiple constraint managers  
							
							 
							
							... 
							
							
							
							Summary: Replace calls to %clang/%clang_cc1 with %clang_analyze_cc1 when invoking static analyzer, and perform runtime substitution to select the appropriate constraint manager, per D28952.
Reviewers: xazax.hun, NoQ, zaks.anna, dcoughlin
Subscribers: mgorny, rgov, mikhail.ramalho, a.sidorin, cfe-commits
Differential Revision: https://reviews.llvm.org/D30373 
llvm-svn: 296835 
							
						 
						
							2017-03-02 22:45:24 +00:00  
						
					 
				
					
						
							
							
								 
								Dominic Chen
							
						 
						
							 
							
							
							
							
								
							
							
								00355a51d0 
								
							 
						 
						
							
							
								
								Revert "Reland: [analyzer] NFC: Update test infrastructure to support multiple constraint managers"  
							
							 
							
							... 
							
							
							
							This reverts commit 1b28d0b10e1c8feccb971abb6ef7a18bee589830.
llvm-svn: 296422 
							
						 
						
							2017-02-28 01:50:23 +00:00  
						
					 
				
					
						
							
							
								 
								Dominic Chen
							
						 
						
							 
							
							
							
							
								
							
							
								59cd893320 
								
							 
						 
						
							
							
								
								Reland: [analyzer] NFC: Update test infrastructure to support multiple constraint managers  
							
							 
							
							... 
							
							
							
							Summary: Replace calls to %clang/%clang_cc1 with %clang_analyze_cc1 when invoking static analyzer, and perform runtime substitution to select the appropriate constraint manager, per D28952.
Reviewers: xazax.hun, NoQ, zaks.anna, dcoughlin
Subscribers: mgorny, rgov, mikhail.ramalho, a.sidorin, cfe-commits
Differential Revision: https://reviews.llvm.org/D30373 
llvm-svn: 296414 
							
						 
						
							2017-02-28 00:02:36 +00:00  
						
					 
				
					
						
							
							
								 
								Dominic Chen
							
						 
						
							 
							
							
							
							
								
							
							
								8589e10c30 
								
							 
						 
						
							
							
								
								Revert "[analyzer] NFC: Update test infrastructure to support multiple constraint managers"  
							
							 
							
							... 
							
							
							
							This reverts commit 8e7780b9e59ddaad1800baf533058d2c064d4787.
llvm-svn: 296317 
							
						 
						
							2017-02-27 03:29:25 +00:00  
						
					 
				
					
						
							
							
								 
								Dominic Chen
							
						 
						
							 
							
							
							
							
								
							
							
								02064a3076 
								
							 
						 
						
							
							
								
								[analyzer] NFC: Update test infrastructure to support multiple constraint managers  
							
							 
							
							... 
							
							
							
							Summary: Replace calls to %clang/%clang_cc1 with %clang_analyze_cc1 when invoking static analyzer, and perform runtime substitution to select the appropriate constraint manager, per D28952.
Reviewers: xazax.hun, NoQ, zaks.anna, dcoughlin
Subscribers: mgorny, rgov, mikhail.ramalho, a.sidorin, cfe-commits
Differential Revision: https://reviews.llvm.org/D30373 
llvm-svn: 296312 
							
						 
						
							2017-02-27 02:36:15 +00:00  
						
					 
				
					
						
							
							
								 
								Jordan Rose
							
						 
						
							 
							
							
							
							
								
							
							
								2be02a7848 
								
							 
						 
						
							
							
								
								[analyzer] Shitfing a constant value by its bit width is undefined.  
							
							 
							
							... 
							
							
							
							Citation: C++11 [expr.shift]p1 (and the equivalent text in C11).
This fixes PR18073, but the right thing to do (as noted in the FIXME) is to
have a real checker for too-large shifts.
llvm-svn: 199405 
							
						 
						
							2014-01-16 18:02:23 +00:00  
						
					 
				
					
						
							
							
								 
								Jordan Rose
							
						 
						
							 
							
							
							
							
								
							
							
								902f02db72 
								
							 
						 
						
							
							
								
								[analyzer] Add tests for symbolic expression liveness.  
							
							 
							
							... 
							
							
							
							There are very few tests here because SValBuilder is fairly aggressive
about not building SymExprs that we can't evaluate, which saves memory
and CPU but also makes it very much tied to the current constraint
manager. We should probably scale back here and let things decay to
UnknownVal later on.
bitwise-ops.c tests that for the SymExprs we do create, we persist our
assumptions about them. traversal-path-unification.c tests that we do
clean out constraints on arbitrary SymExprs once they have actually died.
llvm-svn: 164623 
							
						 
						
							2012-09-25 19:03:09 +00:00