Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								7b56f6c3c2 
								
							 
						 
						
							
							
								
								Simplify some implementations of get*Decl.  
							
							 
							
							... 
							
							
							
							* NamedDecl and CXXMethodDecl were missing getMostRecentDecl.
* The const version can just forward to the non const.
* getMostRecentDecl can use cast instead of cast_or_null.
This then removes some casts from the callers.
llvm-svn: 193039 
							
						 
						
							2013-10-19 16:55:03 +00:00  
						
					 
				
					
						
							
							
								 
								DeLesley Hutchins
							
						 
						
							 
							
							
							
							
								
							
							
								9f5193cf61 
								
							 
						 
						
							
							
								
								Thread Safety Analysis: fix bug when using TryLock with && and || expressions.  
							
							 
							
							... 
							
							
							
							llvm-svn: 188505 
							
						 
						
							2013-08-15 23:06:33 +00:00  
						
					 
				
					
						
							
							
								 
								DeLesley Hutchins
							
						 
						
							 
							
							
							
							
								
							
							
								16b4ff5c4d 
								
							 
						 
						
							
							
								
								Thread safety analysis: move warnings within lock/unlock functions out of beta.  
							
							 
							
							... 
							
							
							
							llvm-svn: 188465 
							
						 
						
							2013-08-15 15:31:25 +00:00  
						
					 
				
					
						
							
							
								 
								Aaron Ballman
							
						 
						
							 
							
							
							
							
								
							
							
								fcd5b7e76e 
								
							 
						 
						
							
							
								
								Updating a link in the comments; no functional change.  
							
							 
							
							... 
							
							
							
							llvm-svn: 185013 
							
						 
						
							2013-06-26 19:17:19 +00:00  
						
					 
				
					
						
							
							
								 
								DeLesley Hutchins
							
						 
						
							 
							
							
							
							
								
							
							
								3b2c66bbda 
								
							 
						 
						
							
							
								
								Thread safety analysis: fix use after free bug reported by Evgeniy Stepanov.  
							
							 
							
							... 
							
							
							
							llvm-svn: 182305 
							
						 
						
							2013-05-20 17:57:55 +00:00  
						
					 
				
					
						
							
							
								 
								DeLesley Hutchins
							
						 
						
							 
							
							
							
							
								
							
							
								b682431775 
								
							 
						 
						
							
							
								
								Thread safety analysis: add two new attributes to the thread safety analysis:  
							
							 
							
							... 
							
							
							
							assert_exclusive_lock and assert_shared_lock.  These attributes are used to
mark functions that dynamically check (i.e. assert) that a lock is held.
llvm-svn: 182170 
							
						 
						
							2013-05-17 23:02:59 +00:00  
						
					 
				
					
						
							
							
								 
								DeLesley Hutchins
							
						 
						
							 
							
							
							
							
								
							
							
								fd374bb3dd 
								
							 
						 
						
							
							
								
								Thread safety analysis: turn on checking within lock and unlock functions.  
							
							 
							
							... 
							
							
							
							These checks are enabled with the -Wthread-safety-beta flag.
llvm-svn: 179046 
							
						 
						
							2013-04-08 20:11:11 +00:00  
						
					 
				
					
						
							
							
								 
								DeLesley Hutchins
							
						 
						
							 
							
							
							
							
								
							
							
								c105ba19e9 
								
							 
						 
						
							
							
								
								Thread safety analysis:  Turn on checking for non-scalar types by default.  
							
							 
							
							... 
							
							
							
							These were previously enabled as a "beta" feature, but they have now been
extensively tested.
llvm-svn: 178478 
							
						 
						
							2013-04-01 17:47:37 +00:00  
						
					 
				
					
						
							
							
								 
								David Blaikie
							
						 
						
							 
							
							
							
							
								
							
							
								00be69ab5c 
								
							 
						 
						
							
							
								
								Remove the CFGElement "Invalid" state.  
							
							 
							
							... 
							
							
							
							Use Optional<CFG*> where invalid states were needed previously. In the one case
where that's not possible (beginAutomaticObjDtorsInsert) just use a dummy
CFGAutomaticObjDtor.
Thanks for the help from Jordan Rose & discussion/feedback from Ted Kremenek
and Doug Gregor.
Post commit code review feedback on r175796 by Ted Kremenek.
llvm-svn: 175938 
							
						 
						
							2013-02-23 00:29:34 +00:00  
						
					 
				
					
						
							
							
								 
								David Blaikie
							
						 
						
							 
							
							
							
							
								
							
							
								2a01f5d426 
								
							 
						 
						
							
							
								
								Replace CFGElement llvm::cast support to be well-defined.  
							
							 
							
							... 
							
							
							
							See r175462 for another example/more details.
llvm-svn: 175796 
							
						 
						
							2013-02-21 20:58:29 +00:00  
						
					 
				
					
						
							
							
								 
								DeLesley Hutchins
							
						 
						
							 
							
							
							
							
								
							
							
								9fa426a666 
								
							 
						 
						
							
							
								
								Thread-safety analysis: ignore edges from throw expressions in CFG.  
							
							 
							
							... 
							
							
							
							llvm-svn: 172858 
							
						 
						
							2013-01-18 22:15:45 +00:00  
						
					 
				
					
						
							
							
								 
								Dmitri Gribenko
							
						 
						
							 
							
							
							
							
								
							
							
								f857950d39 
								
							 
						 
						
							
							
								
								Remove useless 'llvm::' qualifier from names like StringRef and others that are  
							
							 
							
							... 
							
							
							
							brought into 'clang' namespace by clang/Basic/LLVM.h
llvm-svn: 172323 
							
						 
						
							2013-01-12 19:30:44 +00:00  
						
					 
				
					
						
							
							
								 
								DeLesley Hutchins
							
						 
						
							 
							
							
							
							
								
							
							
								0cfa1a5a1d 
								
							 
						 
						
							
							
								
								Thread-safety analysis: check member access on guarded non-primitive types.  
							
							 
							
							... 
							
							
							
							llvm-svn: 169669 
							
						 
						
							2012-12-08 03:46:30 +00:00  
						
					 
				
					
						
							
							
								 
								DeLesley Hutchins
							
						 
						
							 
							
							
							
							
								
							
							
								f489d2b86c 
								
							 
						 
						
							
							
								
								Thread-safety analysis: check locks on method calls, operator=, and  
							
							 
							
							... 
							
							
							
							copy constructors.
llvm-svn: 169350 
							
						 
						
							2012-12-05 01:20:45 +00:00  
						
					 
				
					
						
							
							
								 
								DeLesley Hutchins
							
						 
						
							 
							
							
							
							
								
							
							
								5df82f2155 
								
							 
						 
						
							
							
								
								Thread Safety Analysis: refactor to make more methods accept const pointers,  
							
							 
							
							... 
							
							
							
							adjust checkAccess.  No change in functionality.
llvm-svn: 169348 
							
						 
						
							2012-12-05 00:52:33 +00:00  
						
					 
				
					
						
							
							
								 
								Chandler Carruth
							
						 
						
							 
							
							
							
							
								
							
							
								3a02247dc9 
								
							 
						 
						
							
							
								
								Sort all of Clang's files under 'lib', and fix up the broken headers  
							
							 
							
							... 
							
							
							
							uncovered.
This required manually correcting all of the incorrect main-module
headers I could find, and running the new llvm/utils/sort_includes.py
script over the files.
I also manually added quite a few missing headers that were uncovered by
shuffling the order or moving headers up to be main-module-headers.
llvm-svn: 169237 
							
						 
						
							2012-12-04 09:13:33 +00:00  
						
					 
				
					
						
							
							
								 
								Benjamin Kramer
							
						 
						
							 
							
							
							
							
								
							
							
								ea70eb30a0 
								
							 
						 
						
							
							
								
								Pull the Attr iteration parts out of Attr.h, so including DeclBase.h doesn't pull in all the generated Attr code.  
							
							 
							
							... 
							
							
							
							Required to pull some functions out of line, but this shouldn't have a perf impact.
No functionality change.
llvm-svn: 169092 
							
						 
						
							2012-12-01 15:09:41 +00:00  
						
					 
				
					
						
							
							
								 
								DeLesley Hutchins
							
						 
						
							 
							
							
							
							
								
							
							
								1fe885614d 
								
							 
						 
						
							
							
								
								Thread-safety analysis: allow attributes on constructors to refer to 'this'.  
							
							 
							
							... 
							
							
							
							llvm-svn: 165339 
							
						 
						
							2012-10-05 22:38:19 +00:00  
						
					 
				
					
						
							
							
								 
								DeLesley Hutchins
							
						 
						
							 
							
							
							
							
								
							
							
								10958cae09 
								
							 
						 
						
							
							
								
								Thread-safety analysis: better handling of unreachable blocks.  Fixes a bug  
							
							 
							
							... 
							
							
							
							where a call to function marked 'noreturn' is followed by unreachable
implicit destructor calls.
llvm-svn: 164394 
							
						 
						
							2012-09-21 17:57:00 +00:00  
						
					 
				
					
						
							
							
								 
								DeLesley Hutchins
							
						 
						
							 
							
							
							
							
								
							
							
								fcb0ffa622 
								
							 
						 
						
							
							
								
								Thread-safety analysis: fix bug where shared trylock was treated  
							
							 
							
							... 
							
							
							
							as exclusive.
llvm-svn: 164332 
							
						 
						
							2012-09-20 23:14:43 +00:00  
						
					 
				
					
						
							
							
								 
								DeLesley Hutchins
							
						 
						
							 
							
							
							
							
								
							
							
								b78aeed26e 
								
							 
						 
						
							
							
								
								Thread safety analysis: properly canonicalize calls to virtual methods within  
							
							 
							
							... 
							
							
							
							lock expressions.
llvm-svn: 164324 
							
						 
						
							2012-09-20 22:18:02 +00:00  
						
					 
				
					
						
							
							
								 
								DeLesley Hutchins
							
						 
						
							 
							
							
							
							
								
							
							
								132f8f6959 
								
							 
						 
						
							
							
								
								Thread-safety analysis:  Fix warning when EXCLUSIVE_LOCKS_REQUIRED  
							
							 
							
							... 
							
							
							
							is placed on a function that has no path to the exit block.
llvm-svn: 164244 
							
						 
						
							2012-09-19 19:49:40 +00:00  
						
					 
				
					
						
							
							
								 
								DeLesley Hutchins
							
						 
						
							 
							
							
							
							
								
							
							
								a15e1b4f63 
								
							 
						 
						
							
							
								
								Thread-safety analysis: fix ICE when EXCLUSIVE_LOCKS_REQUIRED or  
							
							 
							
							... 
							
							
							
							LOCKS_EXCLUDED is used on a method with a name that is is not a simple
identifier.
llvm-svn: 164242 
							
						 
						
							2012-09-19 19:18:29 +00:00  
						
					 
				
					
						
							
							
								 
								DeLesley Hutchins
							
						 
						
							 
							
							
							
							
								
							
							
								138568b60a 
								
							 
						 
						
							
							
								
								Thread-safety analysis: fix bug in expression matching code.  
							
							 
							
							... 
							
							
							
							llvm-svn: 163656 
							
						 
						
							2012-09-11 23:04:49 +00:00  
						
					 
				
					
						
							
							
								 
								DeLesley Hutchins
							
						 
						
							 
							
							
							
							
								
							
							
								5ff1644e62 
								
							 
						 
						
							
							
								
								Thread-safety analysis: differentiate between two forms of analysis; a precise  
							
							 
							
							... 
							
							
							
							analysis that may give false positives because it is confused by aliasing, and
a less precise analysis that has fewer false positives, but may have false
negatives.  The more precise warnings are enabled by -Wthread-safety-precise.
An additional note clarify the warnings in the precise case.
llvm-svn: 163537 
							
						 
						
							2012-09-10 19:58:23 +00:00  
						
					 
				
					
						
							
							
								 
								Chad Rosier
							
						 
						
							 
							
							
							
							
								
							
							
								37a8563f36 
								
							 
						 
						
							
							
								
								Ampersand goes with identifier.  
							
							 
							
							... 
							
							
							
							llvm-svn: 163410 
							
						 
						
							2012-09-07 19:49:55 +00:00  
						
					 
				
					
						
							
							
								 
								Chad Rosier
							
						 
						
							 
							
							
							
							
								
							
							
								78af00f675 
								
							 
						 
						
							
							
								
								Bring buildbots back.  Fix scoping issue and coding style from r163397.  
							
							 
							
							... 
							
							
							
							llvm-svn: 163403 
							
						 
						
							2012-09-07 18:44:15 +00:00  
						
					 
				
					
						
							
							
								 
								DeLesley Hutchins
							
						 
						
							 
							
							
							
							
								
							
							
								a5a00e830a 
								
							 
						 
						
							
							
								
								Thread-safety analysis:  Add support for selectively turning off warnings  
							
							 
							
							... 
							
							
							
							within part of a particular method.
llvm-svn: 163397 
							
						 
						
							2012-09-07 17:34:53 +00:00  
						
					 
				
					
						
							
							
								 
								Roman Divacky
							
						 
						
							 
							
							
							
							
								
							
							
								e637711ae0 
								
							 
						 
						
							
							
								
								Dont cast away const needlessly. Found by gcc48 -Wcast-qual.  
							
							 
							
							... 
							
							
							
							llvm-svn: 163325 
							
						 
						
							2012-09-06 15:59:27 +00:00  
						
					 
				
					
						
							
							
								 
								DeLesley Hutchins
							
						 
						
							 
							
							
							
							
								
							
							
								93b1b031c1 
								
							 
						 
						
							
							
								
								Thread-safety analysis: bugfix for case where a trylock occurs in an  
							
							 
							
							... 
							
							
							
							expression involving temporaries.
llvm-svn: 163237 
							
						 
						
							2012-09-05 20:01:16 +00:00  
						
					 
				
					
						
							
							
								 
								DeLesley Hutchins
							
						 
						
							 
							
							
							
							
								
							
							
								f5cf7903d9 
								
							 
						 
						
							
							
								
								Thread-safety analysis: fix handling of LOCK_RETURNED attribute so that the  
							
							 
							
							... 
							
							
							
							latest definition of a function is always used when computing lock expressions.
llvm-svn: 163028 
							
						 
						
							2012-08-31 22:09:53 +00:00  
						
					 
				
					
						
							
							
								 
								DeLesley Hutchins
							
						 
						
							 
							
							
							
							
								
							
							
								3c3d57bc16 
								
							 
						 
						
							
							
								
								Thread-safety analysis: fix handling of string constants in mutex  
							
							 
							
							... 
							
							
							
							expressions, which should be ignored right now.
llvm-svn: 163026 
							
						 
						
							2012-08-31 21:57:32 +00:00  
						
					 
				
					
						
							
							
								 
								Ted Kremenek
							
						 
						
							 
							
							
							
							
								
							
							
								78094caa56 
								
							 
						 
						
							
							
								
								Fix an assortment of doxygen comment issues found by -Wdocumentation.  
							
							 
							
							... 
							
							
							
							llvm-svn: 162412 
							
						 
						
							2012-08-22 23:50:41 +00:00  
						
					 
				
					
						
							
							
								 
								DeLesley Hutchins
							
						 
						
							 
							
							
							
							
								
							
							
								0c90c2bc4b 
								
							 
						 
						
							
							
								
								Thread-safety-analysis:  adds existential quantification over lock  
							
							 
							
							... 
							
							
							
							expressions.  The syntax &MyClass::mutex is interpreted as a
pattern that matches m->mutex for any object m of type MyClass.
llvm-svn: 161691 
							
						 
						
							2012-08-10 20:29:46 +00:00  
						
					 
				
					
						
							
							
								 
								DeLesley Hutchins
							
						 
						
							 
							
							
							
							
								
							
							
								9b1d72f3e3 
								
							 
						 
						
							
							
								
								Thread safety analysis: refactor to support more sophisticated handling  
							
							 
							
							... 
							
							
							
							of expressions, and better error messages.
llvm-svn: 161690 
							
						 
						
							2012-08-10 20:19:55 +00:00  
						
					 
				
					
						
							
							
								 
								DeLesley Hutchins
							
						 
						
							 
							
							
							
							
								
							
							
								c9776faa4f 
								
							 
						 
						
							
							
								
								Refactor thread safety analysis to use a different data structure  
							
							 
							
							... 
							
							
							
							to track locksets.  This is in preparation for further changes.
llvm-svn: 161680 
							
						 
						
							2012-08-10 18:39:05 +00:00  
						
					 
				
					
						
							
							
								 
								Sylvestre Ledru
							
						 
						
							 
							
							
							
							
								
							
							
								830885ca64 
								
							 
						 
						
							
							
								
								Fix a typo (the the => the)  
							
							 
							
							... 
							
							
							
							llvm-svn: 160622 
							
						 
						
							2012-07-23 08:59:39 +00:00  
						
					 
				
					
						
							
							
								 
								DeLesley Hutchins
							
						 
						
							 
							
							
							
							
								
							
							
								868830f727 
								
							 
						 
						
							
							
								
								Thread safety analysis: impove handling of trylock expressions.  
							
							 
							
							... 
							
							
							
							llvm-svn: 160018 
							
						 
						
							2012-07-10 21:47:55 +00:00  
						
					 
				
					
						
							
							
								 
								DeLesley Hutchins
							
						 
						
							 
							
							
							
							
								
							
							
								09bcefcb6d 
								
							 
						 
						
							
							
								
								Thread-safety analysis: eliminate false positives in case where the definition  
							
							 
							
							... 
							
							
							
							duplicates attributes on the declaration.  Also eliminates a false negative in
ReleasableMutexLock.  Fixing this bug required some refactoring.
llvm-svn: 159780 
							
						 
						
							2012-07-05 21:16:29 +00:00  
						
					 
				
					
						
							
							
								 
								DeLesley Hutchins
							
						 
						
							 
							
							
							
							
								
							
							
								3a8d6cff14 
								
							 
						 
						
							
							
								
								Thread safety analysis: improve handling of smart pointers.  
							
							 
							
							... 
							
							
							
							llvm-svn: 159679 
							
						 
						
							2012-07-03 19:47:18 +00:00  
						
					 
				
					
						
							
							
								 
								DeLesley Hutchins
							
						 
						
							 
							
							
							
							
								
							
							
								0c1da20bf8 
								
							 
						 
						
							
							
								
								Thread Safety Analysis: handle expressions involving temporaries,  
							
							 
							
							... 
							
							
							
							e.g. ExprWithCleanups.
llvm-svn: 159674 
							
						 
						
							2012-07-03 18:25:56 +00:00  
						
					 
				
					
						
							
							
								 
								DeLesley Hutchins
							
						 
						
							 
							
							
							
							
								
							
							
								ab0d4e6cd8 
								
							 
						 
						
							
							
								
								Thread safety analysis:  fixed bug that occurs when very silly people  
							
							 
							
							... 
							
							
							
							use scoped_lockable without putting unlock_function on the
destructor.
llvm-svn: 159609 
							
						 
						
							2012-07-02 22:26:29 +00:00  
						
					 
				
					
						
							
							
								 
								DeLesley Hutchins
							
						 
						
							 
							
							
							
							
								
							
							
								6e6dbb7618 
								
							 
						 
						
							
							
								
								Thread safety analysis: fixed incorrect error message at the end of a locks_required function.  
							
							 
							
							... 
							
							
							
							llvm-svn: 159607 
							
						 
						
							2012-07-02 22:16:54 +00:00  
						
					 
				
					
						
							
							
								 
								DeLesley Hutchins
							
						 
						
							 
							
							
							
							
								
							
							
								2a15baf968 
								
							 
						 
						
							
							
								
								Thread safety analysis: don't warn in case of duplicate annotation.  
							
							 
							
							... 
							
							
							
							llvm-svn: 159606 
							
						 
						
							2012-07-02 22:12:12 +00:00  
						
					 
				
					
						
							
							
								 
								DeLesley Hutchins
							
						 
						
							 
							
							
							
							
								
							
							
								c4a6e51596 
								
							 
						 
						
							
							
								
								Thread Safety Analysis: turn off checking within trylock functions.  
							
							 
							
							... 
							
							
							
							llvm-svn: 159601 
							
						 
						
							2012-07-02 21:59:24 +00:00  
						
					 
				
					
						
							
							
								 
								DeLesley Hutchins
							
						 
						
							 
							
							
							
							
								
							
							
								d162c91b1a 
								
							 
						 
						
							
							
								
								Thread safety analysis:  support release() function on scoped  
							
							 
							
							... 
							
							
							
							lockable objects.
llvm-svn: 159387 
							
						 
						
							2012-06-28 22:42:48 +00:00  
						
					 
				
					
						
							
							
								 
								DeLesley Hutchins
							
						 
						
							 
							
							
							
							
								
							
							
								49979f2e38 
								
							 
						 
						
							
							
								
								Thread safety analysis:  implement lock_returned attribute.  
							
							 
							
							... 
							
							
							
							llvm-svn: 159152 
							
						 
						
							2012-06-25 18:33:18 +00:00  
						
					 
				
					
						
							
							
								 
								DeLesley Hutchins
							
						 
						
							 
							
							
							
							
								
							
							
								ebbf77016d 
								
							 
						 
						
							
							
								
								Thread safety analysis: fixes a bug in which locksets are not handled  
							
							 
							
							... 
							
							
							
							properly if there is a join point in the control flow graph that involves
a trylock.  Also changes the source locations of some warnings to be
more consistent.
llvm-svn: 159008 
							
						 
						
							2012-06-22 17:07:28 +00:00  
						
					 
				
					
						
							
							
								 
								DeLesley Hutchins
							
						 
						
							 
							
							
							
							
								
							
							
								8c9d9579c4 
								
							 
						 
						
							
							
								
								Refactor the thread safety analysis so that it is easier to do  
							
							 
							
							... 
							
							
							
							path-sensitive analysis like handling of trylock expressions.
llvm-svn: 155137 
							
						 
						
							2012-04-19 16:48:43 +00:00  
						
					 
				
					
						
							
							
								 
								John McCall
							
						 
						
							 
							
							
							
							
								
							
							
								113bee0536 
								
							 
						 
						
							
							
								
								Remove BlockDeclRefExpr and introduce a bit on DeclRefExpr to  
							
							 
							
							... 
							
							
							
							track whether the referenced declaration comes from an enclosing
local context.  I'm amenable to suggestions about the exact meaning
of this bit.
llvm-svn: 152491 
							
						 
						
							2012-03-10 09:33:50 +00:00  
						
					 
				
					
						
							
							
								 
								DeLesley Hutchins
							
						 
						
							 
							
							
							
							
								
							
							
								e2a3f75a12 
								
							 
						 
						
							
							
								
								Thread safety analysis: expand set of expressions that can be used to denote locks.  
							
							 
							
							... 
							
							
							
							llvm-svn: 151956 
							
						 
						
							2012-03-02 23:36:05 +00:00  
						
					 
				
					
						
							
							
								 
								DeLesley Hutchins
							
						 
						
							 
							
							
							
							
								
							
							
								a2587ef26d 
								
							 
						 
						
							
							
								
								Thread safety analysis: handle CFG blocks which call functions marked as noreturn.  
							
							 
							
							... 
							
							
							
							llvm-svn: 151944 
							
						 
						
							2012-03-02 22:02:58 +00:00  
						
					 
				
					
						
							
							
								 
								DeLesley Hutchins
							
						 
						
							 
							
							
							
							
								
							
							
								c2286f6402 
								
							 
						 
						
							
							
								
								Thread-safety analysis: Disable checking inside constructors, destructors, lock, and unlock functions  
							
							 
							
							... 
							
							
							
							llvm-svn: 150701 
							
						 
						
							2012-02-16 17:13:43 +00:00  
						
					 
				
					
						
							
							
								 
								DeLesley Hutchins
							
						 
						
							 
							
							
							
							
								
							
							
								bc8ffdb68c 
								
							 
						 
						
							
							
								
								Thread-Safety: added support for 'this' as a lock expression.  
							
							 
							
							... 
							
							
							
							llvm-svn: 150700 
							
						 
						
							2012-02-16 17:03:24 +00:00  
						
					 
				
					
						
							
							
								 
								Richard Smith
							
						 
						
							 
							
							
							
							
								
							
							
								922866783b 
								
							 
						 
						
							
							
								
								Thread safety analysis:  
							
							 
							
							... 
							
							
							
							* When we detect that a CFG block has inconsistent lock sets, point the
   diagnostic at the location where we found the inconsistency, and point a note
   at somewhere the inconsistently-locked mutex was locked.
 * Fix the wording of the normal (non-loop, non-end-of-function) case of this
   diagnostic to not suggest that the mutex is going out of scope.
 * Fix the diagnostic emission code to keep a warning and its note together when
   sorting the diagnostics into source location order.
llvm-svn: 149669 
							
						 
						
							2012-02-03 04:45:26 +00:00  
						
					 
				
					
						
							
							
								 
								Richard Smith
							
						 
						
							 
							
							
							
							
								
							
							
								815b29d7c9 
								
							 
						 
						
							
							
								
								Thread safety analysis: at a CFG join point between a block terminating in a  
							
							 
							
							... 
							
							
							
							'continue' and another block, prefer the lockset from the other block, and
diagnose the 'continue' block as being the end of a loop.
llvm-svn: 149666 
							
						 
						
							2012-02-03 03:30:07 +00:00  
						
					 
				
					
						
							
							
								 
								DeLesley Hutchins
							
						 
						
							 
							
							
							
							
								
							
							
								68f7b1a647 
								
							 
						 
						
							
							
								
								Handle thread safety attributes on functions with separate definitions and declarations.  
							
							 
							
							... 
							
							
							
							llvm-svn: 148599 
							
						 
						
							2012-01-20 23:24:41 +00:00  
						
					 
				
					
						
							
							
								 
								DeLesley Hutchins
							
						 
						
							 
							
							
							
							
								
							
							
								9d53033de6 
								
							 
						 
						
							
							
								
								Thread safety analysis: added support for trylock attribute.  
							
							 
							
							... 
							
							
							
							llvm-svn: 147672 
							
						 
						
							2012-01-06 19:16:50 +00:00  
						
					 
				
					
						
							
							
								 
								DeLesley Hutchins
							
						 
						
							 
							
							
							
							
								
							
							
								9b7022e570 
								
							 
						 
						
							
							
								
								Added LocalVariableMap  
							
							 
							
							... 
							
							
							
							llvm-svn: 147670 
							
						 
						
							2012-01-06 18:36:09 +00:00  
						
					 
				
					
						
							
							
								 
								DeLesley Hutchins
							
						 
						
							 
							
							
							
							
								
							
							
								714296cb31 
								
							 
						 
						
							
							
								
								Support for thread safety attributes on functions  
							
							 
							
							... 
							
							
							
							llvm-svn: 147331 
							
						 
						
							2011-12-29 00:56:48 +00:00  
						
					 
				
					
						
							
							
								 
								DeLesley Hutchins
							
						 
						
							 
							
							
							
							
								
							
							
								f7faa6a69b 
								
							 
						 
						
							
							
								
								This patch extends thread safety analysis with support for the scoped_lockable attribute.  
							
							 
							
							... 
							
							
							
							llvm-svn: 146174 
							
						 
						
							2011-12-08 20:23:06 +00:00  
						
					 
				
					
						
							
							
								 
								Ted Kremenek
							
						 
						
							 
							
							
							
							
								
							
							
								81ce1c8a99 
								
							 
						 
						
							
							
								
								Rename AnalysisContext to AnalysisDeclContext.  Not only is this name more accurate, but it frees up the name AnalysisContext for other uses.  
							
							 
							
							... 
							
							
							
							llvm-svn: 142782 
							
						 
						
							2011-10-24 01:32:45 +00:00  
						
					 
				
					
						
							
							
								 
								Ted Kremenek
							
						 
						
							 
							
							
							
							
								
							
							
								4b4c51c323 
								
							 
						 
						
							
							
								
								Refactor ThreadSafety to use PostOrderCFGView instead of its own copy (of TopologicallySortedCFG).  
							
							 
							
							... 
							
							
							
							llvm-svn: 142714 
							
						 
						
							2011-10-22 02:14:27 +00:00  
						
					 
				
					
						
							
							
								 
								DeLesley Hutchins
							
						 
						
							 
							
							
							
							
								
							
							
								f893e8ab87 
								
							 
						 
						
							
							
								
								Added support for thread safety attributes on destructors.  
							
							 
							
							... 
							
							
							
							llvm-svn: 142685 
							
						 
						
							2011-10-21 20:51:27 +00:00  
						
					 
				
					
						
							
							
								 
								DeLesley Hutchins
							
						 
						
							 
							
							
							
							
								
							
							
								c20905110a 
								
							 
						 
						
							
							
								
								Thread safety analysis refactoring: invalid lock expressions.  
							
							 
							
							... 
							
							
							
							llvm-svn: 142666 
							
						 
						
							2011-10-21 18:10:14 +00:00  
						
					 
				
					
						
							
							
								 
								DeLesley Hutchins
							
						 
						
							 
							
							
							
							
								
							
							
								db917bdea2 
								
							 
						 
						
							
							
								
								Thread safety analysis: add support for attributes on constructors.  
							
							 
							
							... 
							
							
							
							llvm-svn: 142665 
							
						 
						
							2011-10-21 18:06:53 +00:00  
						
					 
				
					
						
							
							
								 
								DeLesley Hutchins
							
						 
						
							 
							
							
							
							
								
							
							
								3d312b175a 
								
							 
						 
						
							
							
								
								Refactoring and code cleanup.  
							
							 
							
							... 
							
							
							
							llvm-svn: 142654 
							
						 
						
							2011-10-21 16:14:33 +00:00  
						
					 
				
					
						
							
							
								 
								DeLesley Hutchins
							
						 
						
							 
							
							
							
							
								
							
							
								30abeb1680 
								
							 
						 
						
							
							
								
								Substitute for arguments in method calls -- functionality  
							
							 
							
							... 
							
							
							
							llvm-svn: 142267 
							
						 
						
							2011-10-17 21:38:02 +00:00  
						
					 
				
					
						
							
							
								 
								DeLesley Hutchins
							
						 
						
							 
							
							
							
							
								
							
							
								a088f67bee 
								
							 
						 
						
							
							
								
								Substitute for arguments in method calls -- refactoring  
							
							 
							
							... 
							
							
							
							llvm-svn: 142260 
							
						 
						
							2011-10-17 21:33:35 +00:00  
						
					 
				
					
						
							
							
								 
								DeLesley Hutchins
							
						 
						
							 
							
							
							
							
								
							
							
								08e094aee3 
								
							 
						 
						
							
							
								
								Test commit  
							
							 
							
							... 
							
							
							
							llvm-svn: 140149 
							
						 
						
							2011-09-20 17:25:59 +00:00  
						
					 
				
					
						
							
							
								 
								Caitlin Sadowski
							
						 
						
							 
							
							
							
							
								
							
							
								086fb95da5 
								
							 
						 
						
							
							
								
								Thread safety: Adding FIXMEs and a couple cleanups  
							
							 
							
							... 
							
							
							
							llvm-svn: 139894 
							
						 
						
							2011-09-16 00:35:54 +00:00  
						
					 
				
					
						
							
							
								 
								Caitlin Sadowski
							
						 
						
							 
							
							
							
							
								
							
							
								6525fb25cb 
								
							 
						 
						
							
							
								
								Thread safety: completeing the implementation of shared/exclusive locks required attributes  
							
							 
							
							... 
							
							
							
							llvm-svn: 139804 
							
						 
						
							2011-09-15 17:43:08 +00:00  
						
					 
				
					
						
							
							
								 
								Caitlin Sadowski
							
						 
						
							 
							
							
							
							
								
							
							
								af9b7c5f8b 
								
							 
						 
						
							
							
								
								Thread safety: refactoring various out of scope warnings to use the same inteface. This eliminates a lot of unnecessary duplicated code.  
							
							 
							
							... 
							
							
							
							llvm-svn: 139801 
							
						 
						
							2011-09-15 17:25:19 +00:00  
						
					 
				
					
						
							
							
								 
								Caitlin Sadowski
							
						 
						
							 
							
							
							
							
								
							
							
								5b34a2fd6e 
								
							 
						 
						
							
							
								
								Thread safety: adding additional documentation to the main thread safety interface, and making the destructor for the thread safety handler pure virtual  
							
							 
							
							... 
							
							
							
							llvm-svn: 139722 
							
						 
						
							2011-09-14 20:05:09 +00:00  
						
					 
				
					
						
							
							
								 
								Caitlin Sadowski
							
						 
						
							 
							
							
							
							
								
							
							
								787c2a1b09 
								
							 
						 
						
							
							
								
								Thread safety: adding test cases for unparseable lock expressions and expanding the handling of these expressions  
							
							 
							
							... 
							
							
							
							llvm-svn: 139720 
							
						 
						
							2011-09-14 20:00:24 +00:00  
						
					 
				
					
						
							
							
								 
								Caitlin Sadowski
							
						 
						
							 
							
							
							
							
								
							
							
								eecd273951 
								
							 
						 
						
							
							
								
								Thread safety: small formatting change  
							
							 
							
							... 
							
							
							
							llvm-svn: 139548 
							
						 
						
							2011-09-12 22:28:41 +00:00  
						
					 
				
					
						
							
							
								 
								Benjamin Kramer
							
						 
						
							 
							
							
							
							
								
							
							
								8a8051f2cd 
								
							 
						 
						
							
							
								
								Silence "end of non-void function" warnings with llvm_unreachable and add an assert.  
							
							 
							
							... 
							
							
							
							llvm-svn: 139474 
							
						 
						
							2011-09-10 21:52:04 +00:00  
						
					 
				
					
						
							
							
								 
								Caitlin Sadowski
							
						 
						
							 
							
							
							
							
								
							
							
								82e2de512e 
								
							 
						 
						
							
							
								
								Thread safety: removing unnecessary import and reordering import list  
							
							 
							
							... 
							
							
							
							llvm-svn: 139426 
							
						 
						
							2011-09-09 23:00:59 +00:00  
						
					 
				
					
						
							
							
								 
								Caitlin Sadowski
							
						 
						
							 
							
							
							
							
								
							
							
								0bef2279fb 
								
							 
						 
						
							
							
								
								Thread safety: removing unnecessary import  
							
							 
							
							... 
							
							
							
							llvm-svn: 139425 
							
						 
						
							2011-09-09 22:49:12 +00:00  
						
					 
				
					
						
							
							
								 
								Caitlin Sadowski
							
						 
						
							 
							
							
							
							
								
							
							
								ff2f3f8105 
								
							 
						 
						
							
							
								
								Thread safety: This patch deals with previously unhandled cases when building lock expressions. We now resolve this expressions, avoid crashing when encountering cast expressions, and have a diagnostic for unresolved lock expressions  
							
							 
							
							... 
							
							
							
							llvm-svn: 139370 
							
						 
						
							2011-09-09 16:21:55 +00:00  
						
					 
				
					
						
							
							
								 
								Caitlin Sadowski
							
						 
						
							 
							
							
							
							
								
							
							
								33208340bd 
								
							 
						 
						
							
							
								
								Thread Safety: Moving the analysis to a new file  
							
							 
							
							... 
							
							
							
							llvm-svn: 139369 
							
						 
						
							2011-09-09 16:11:56 +00:00