Benjamin Kramer 
							
						 
					 
					
						
						
							
						
						91a8ad71aa 
					 
					
						
						
							
							IntrusiveRefCntPtr: Simplify operator= as suggested by Richard Smith.  
						
						... 
						
						
						
						This way the constructors do all the hard work. No intended functionality change.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157773  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2012-05-31 22:25:25 +00:00 
						 
				 
			
				
					
						
							
							
								Benjamin Kramer 
							
						 
					 
					
						
						
							
						
						5acc40a037 
					 
					
						
						
							
							IntrusiveRefCntPtr: Use the same pattern as the other operator= overloads when using rvalue refs.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157546  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2012-05-27 20:46:04 +00:00 
						 
				 
			
				
					
						
							
							
								Benjamin Kramer 
							
						 
					 
					
						
						
							
						
						e3f75f8797 
					 
					
						
						
							
							Move-enable IntrusiveRefCntPtr.  
						
						... 
						
						
						
						These tend to be copied around a lot, moving it instead saves a ton of memory
accesses.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157535  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2012-05-27 16:22:08 +00:00 
						 
				 
			
				
					
						
							
							
								Manuel Klimek 
							
						 
					 
					
						
						
							
						
						41aa108f74 
					 
					
						
						
							
							RefCountedBaseVPTR needs the IntrusiveRefCntPtrInfo as friend,  
						
						... 
						
						
						
						now that this handles the release / retain calls.
Adds a regression test for that bug (which is a compile-time
regression) and for the last two changes to the IntrusiveRefCntPtr,
especially tests for the memory leak due to copy construction of the
ref-counted object and ensuring that the traits are used for release /
retain calls.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149411  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2012-01-31 19:58:34 +00:00 
						 
				 
			
				
					
						
							
							
								Ted Kremenek 
							
						 
					 
					
						
						
							
						
						97cf71a517 
					 
					
						
						
							
							Relax constructor for IntrusiveRefCntPtr to not be explicit.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149309  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2012-01-31 00:57:08 +00:00 
						 
				 
			
				
					
						
							
							
								Ted Kremenek 
							
						 
					 
					
						
						
							
						
						0004d86704 
					 
					
						
						
							
							Use traits for IntrusiveRefCntPtr to determine how to increment/decrement a reference count.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149308  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2012-01-31 00:57:04 +00:00 
						 
				 
			
				
					
						
							
							
								David Blaikie 
							
						 
					 
					
						
						
							
						
						2d24e2a396 
					 
					
						
						
							
							Unweaken vtables as per  http://llvm.org/docs/CodingStandards.html#ll_virtual_anch  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146960  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2011-12-20 02:50:00 +00:00 
						 
				 
			
				
					
						
							
							
								Michael J. Spencer 
							
						 
					 
					
						
						
							
						
						a81ac8f2b5 
					 
					
						
						
							
							Support/FileSystem: Implement recursive_directory_iterator and make  
						
						... 
						
						
						
						directory_iterator preserve InputIterator semantics on copy.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146200  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2011-12-08 22:50:09 +00:00 
						 
				 
			
				
					
						
							
							
								Ted Kremenek 
							
						 
					 
					
						
						
							
						
						f249449539 
					 
					
						
						
							
							Fix bug in RefCountedBase/RefCountedBaseVPTR where the reference count was accidentally copied as part of the copy constructor.  This could result in objects getting leaked because there reference count was too high.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144931  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2011-11-17 23:02:14 +00:00 
						 
				 
			
				
					
						
							
							
								Peter Collingbourne 
							
						 
					 
					
						
						
							
						
						10fdd5a0f6 
					 
					
						
						
							
							IntrusiveRefCntPtr: in RefCountedBase and RefCountedBaseVPTR, make  
						
						... 
						
						
						
						ref_cnt mutable and Retain/Release const to enable reference counted
pointers to const objects
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128804  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2011-04-04 00:57:03 +00:00 
						 
				 
			
				
					
						
							
							
								Ted Kremenek 
							
						 
					 
					
						
						
							
						
						116e2348ed 
					 
					
						
						
							
							Relax access control on 'Release' method of RefCountedBase.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128054  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2011-03-22 01:15:07 +00:00 
						 
				 
			
				
					
						
							
							
								Ted Kremenek 
							
						 
					 
					
						
						
							
						
						47f0f1856f 
					 
					
						
						
							
							Allow a client to clear an IntrustiveRefCntPtr (deliberately leaking the referenced object).  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128007  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2011-03-21 18:37:59 +00:00 
						 
				 
			
				
					
						
							
							
								Argyrios Kyrtzidis 
							
						 
					 
					
						
						
							
						
						b518c25b3e 
					 
					
						
						
							
							If a class inherits from RefCountedBaseVPTR allow all its subclasses to be used with IntrusiveRefCntPtr.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127966  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2011-03-20 06:14:56 +00:00 
						 
				 
			
				
					
						
							
							
								Misha Brukman 
							
						 
					 
					
						
						
							
						
						a2769a33c9 
					 
					
						
						
							
							Fixed lint errors:  
						
						... 
						
						
						
						* Alphabetized #includes
* Removed trailing whitespace
* Wrapped or shortened lines over 80 chars
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@65181  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-02-20 22:20:18 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						30ac7df857 
					 
					
						
						
							
							improvements for IntrusiveRefCntPtr, patch by Mikhail Glushenkov  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49538  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-04-11 16:42:06 +00:00 
						 
				 
			
				
					
						
							
							
								Anton Korobeynikov 
							
						 
					 
					
						
						
							
						
						ac67b7ea8f 
					 
					
						
						
							
							Add first proof-of-concept universal compiler driver framework based  
						
						... 
						
						
						
						on ideas mentioned in PR686.
Written by Mikhail Glushenkov and contributed by Codedgers, Inc.
Old llvmc will be removed soon after new one will have all its properties.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48699  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-03-23 08:57:20 +00:00 
						 
				 
			
				
					
						
							
							
								Anton Korobeynikov 
							
						 
					 
					
						
						
							
						
						95e78348f0 
					 
					
						
						
							
							Update per review. Patch by Mikhail Glushenkov!  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47628  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-02-26 21:44:24 +00:00 
						 
				 
			
				
					
						
							
							
								Anton Korobeynikov 
							
						 
					 
					
						
						
							
						
						567a273370 
					 
					
						
						
							
							Add smart refcounting pointer class to ADT back (known before as IntrusiveSPtr.h).  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47482  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-02-22 17:26:05 +00:00