Chris Lattner 
							
						 
					 
					
						
						
							
						
						9fc5cdf77c 
					 
					
						
						
							
							split dom frontier handling stuff out to its own DominanceFrontier header,  
						
						... 
						
						
						
						so that Dominators.h is *just* domtree.  Also prune #includes a bit.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122714  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2011-01-02 22:09:33 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						5034dd318a 
					 
					
						
						
							
							Move Value::getUnderlyingObject to be a standalone  
						
						... 
						
						
						
						function so that it can live in Analysis instead of
VMCore.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121885  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-12-15 20:02:24 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						d891acd184 
					 
					
						
						
							
							Minimally update this code to handle PartialAlias.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121518  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-12-10 20:14:49 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						17ead4ff4b 
					 
					
						
						
							
							Move SCEV::isLoopInvariant and hasComputableLoopEvolution to be member  
						
						... 
						
						
						
						functions of ScalarEvolution, in preparation for memoization and
other optimizations.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119562  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-11-17 21:23:15 +00:00 
						 
				 
			
				
					
						
							
							
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						2ab36d3502 
					 
					
						
						
							
							Begin adding static dependence information to passes, which will allow us to  
						
						... 
						
						
						
						perform initialization without static constructors AND without explicit initialization
by the client.  For the moment, passes are required to initialize both their
(potential) dependencies and any passes they preserve.  I hope to be able to relax
the latter requirement in the future.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116334  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-10-12 19:48:12 +00:00 
						 
				 
			
				
					
						
							
							
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						ce665bd2e2 
					 
					
						
						
							
							Now with fewer extraneous semicolons!  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115996  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-10-07 22:25:06 +00:00 
						 
				 
			
				
					
						
							
							
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						d13db2c59c 
					 
					
						
						
							
							Fix batch of converting RegisterPass<> to INTIALIZE_PASS().  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109045  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-07-21 22:09:45 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						9553188fcc 
					 
					
						
						
							
							Define placement new wrappers for BumpPtrAllocator and  
						
						... 
						
						
						
						RecyclingAllocator to allow client code to be simpler, and
simplify several clients.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98847  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-03-18 18:49:47 +00:00 
						 
				 
			
				
					
						
							
							
								David Greene 
							
						 
					 
					
						
						
							
						
						d387b2b1cf 
					 
					
						
						
							
							Convert debug messages to use dbgs().  Generally this means  
						
						... 
						
						
						
						s/errs/dbgs/g except for certain special cases.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92042  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-23 20:52:41 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						9661c13c37 
					 
					
						
						
							
							remove a few dead insertion methods.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79882  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-08-24 02:39:26 +00:00 
						 
				 
			
				
					
						
							
							
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						1d0be15f89 
					 
					
						
						
							
							Push LLVMContexts through the IntegerType APIs.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78948  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-08-13 21:58:54 +00:00 
						 
				 
			
				
					
						
							
							
								Andreas Bolka 
							
						 
					 
					
						
						
							
						
						699db99c1a 
					 
					
						
						
							
							SIV/MIV classification for LDA.  
						
						... 
						
						
						
						LoopDependenceAnalysis::getLoops is currently O(N*M) for a loop-nest of
depth N and a compound SCEV of M atomic SCEVs. As both N and M will
typically be very small, this should not be a problem. If it turns out
to be one, rewriting getLoops as SCEVVisitor will reduce complexity to
O(M).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78394  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-08-07 18:23:41 +00:00 
						 
				 
			
				
					
						
							
							
								Andreas Bolka 
							
						 
					 
					
						
						
							
						
						6151f67285 
					 
					
						
						
							
							Simplify the ZIV tester to the max.  
						
						... 
						
						
						
						As suggested by Nick Lewycky.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78277  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-08-06 03:10:33 +00:00 
						 
				 
			
				
					
						
							
							
								Andreas Bolka 
							
						 
					 
					
						
						
							
						
						831f6f6d2a 
					 
					
						
						
							
							ZIV tester for LDA.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78157  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-08-05 04:26:05 +00:00 
						 
				 
			
				
					
						
							
							
								Andreas Bolka 
							
						 
					 
					
						
						
							
						
						a1b78d133e 
					 
					
						
						
							
							Restrict LDA to GEPs with the same pointer offset.  
						
						... 
						
						
						
						We can not simply apply ZIV testing to the pointer offsets, as this
would incorrectly return independence for e.g. (GEP x,0,i; GEP x,1,-i).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78155  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-08-05 04:13:41 +00:00 
						 
				 
			
				
					
						
							
							
								Andreas Bolka 
							
						 
					 
					
						
						
							
						
						5eca4525f4 
					 
					
						
						
							
							Restrict LDA to affine subscripts.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77932  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-08-03 01:03:48 +00:00 
						 
				 
			
				
					
						
							
							
								Andreas Bolka 
							
						 
					 
					
						
						
							
						
						713395950a 
					 
					
						
						
							
							Equal SCEVs of a subscript give rise to dependence.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77570  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-30 02:26:01 +00:00 
						 
				 
			
				
					
						
							
							
								Andreas Bolka 
							
						 
					 
					
						
						
							
						
						15f72dbf97 
					 
					
						
						
							
							Skeleton for pairwise subscript testing.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77437  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-29 05:35:53 +00:00 
						 
				 
			
				
					
						
							
							
								Andreas Bolka 
							
						 
					 
					
						
						
							
						
						c3cc45aa8b 
					 
					
						
						
							
							Simplify LDA-internal interface.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77359  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-28 19:50:13 +00:00 
						 
				 
			
				
					
						
							
							
								Andreas Bolka 
							
						 
					 
					
						
						
							
						
						328fb3d210 
					 
					
						
						
							
							Add LDA statistics.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77358  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-28 19:49:49 +00:00 
						 
				 
			
				
					
						
							
							
								Andreas Bolka 
							
						 
					 
					
						
						
							
						
						34ce687144 
					 
					
						
						
							
							Minor factoring, naming and formatting cleanups.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77357  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-28 19:49:25 +00:00 
						 
				 
			
				
					
						
							
							
								Andreas Bolka 
							
						 
					 
					
						
						
							
						
						8a8bd3d690 
					 
					
						
						
							
							Convert DOUT to DEBUG.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77065  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-25 12:19:58 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						fc2a3ed0c9 
					 
					
						
						
							
							Make AliasAnalysis and related classes use  
						
						... 
						
						
						
						getAnalysisIfAvailable<TargetData>().
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77028  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-25 00:48:42 +00:00 
						 
				 
			
				
					
						
							
							
								Andreas Bolka 
							
						 
					 
					
						
						
							
						
						0baa25d539 
					 
					
						
						
							
							Forward-declare raw_ostream.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77014  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-24 23:19:28 +00:00 
						 
				 
			
				
					
						
							
							
								Andreas Bolka 
							
						 
					 
					
						
						
							
						
						b4c28e97f4 
					 
					
						
						
							
							Cache dependence computation using FoldingSet.  
						
						... 
						
						
						
						This introduces an LDA-internal DependencePair class. The intention is,
that this is a place where dependence testers can store various results
such as SCEVs describing conflicting iterations, breaking conditions,
distance/direction vectors, etc.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76877  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-23 14:32:46 +00:00 
						 
				 
			
				
					
						
							
							
								Andreas Bolka 
							
						 
					 
					
						
						
							
						
						3b59dd886a 
					 
					
						
						
							
							Minor cosmetics: indentation, formatting, naming.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76839  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-23 01:57:06 +00:00 
						 
				 
			
				
					
						
							
							
								Torok Edwin 
							
						 
					 
					
						
						
							
						
						c23197a26f 
					 
					
						
						
							
							llvm_unreachable->llvm_unreachable(0), LLVM_UNREACHABLE->llvm_unreachable.  
						
						... 
						
						
						
						This adds location info for all llvm_unreachable calls (which is a macro now) in
!NDEBUG builds.
In NDEBUG builds location info and the message is off (it only prints
"UREACHABLE executed").
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75640  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-14 16:55:14 +00:00 
						 
				 
			
				
					
						
							
							
								Torok Edwin 
							
						 
					 
					
						
						
							
						
						c25e7581b9 
					 
					
						
						
							
							assert(0) -> LLVM_UNREACHABLE.  
						
						... 
						
						
						
						Make llvm_unreachable take an optional string, thus moving the cerr<< out of
line.
LLVM_UNREACHABLE is now a simple wrapper that makes the message go away for
NDEBUG builds.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75379  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-11 20:10:48 +00:00 
						 
				 
			
				
					
						
							
							
								Andreas Bolka 
							
						 
					 
					
						
						
							
						
						292aef33e1 
					 
					
						
						
							
							Minor improvement to the LDA debug output.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74754  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-03 01:42:52 +00:00 
						 
				 
			
				
					
						
							
							
								Andreas Bolka 
							
						 
					 
					
						
						
							
						
						fecbc59be6 
					 
					
						
						
							
							Use AA to check objects before LDA.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74647  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-01 21:45:23 +00:00 
						 
				 
			
				
					
						
							
							
								Andreas Bolka 
							
						 
					 
					
						
						
							
						
						e9722fc850 
					 
					
						
						
							
							Array accesses are independent if the underlying arrays differ.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74499  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-06-30 02:12:10 +00:00 
						 
				 
			
				
					
						
							
							
								Andreas Bolka 
							
						 
					 
					
						
						
							
						
						2fbb770d40 
					 
					
						
						
							
							Relax LDA memory instruction checks.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74439  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-06-29 18:51:11 +00:00 
						 
				 
			
				
					
						
							
							
								Andreas Bolka 
							
						 
					 
					
						
						
							
						
						868a302738 
					 
					
						
						
							
							Missed one.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74416  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-06-29 00:53:49 +00:00 
						 
				 
			
				
					
						
							
							
								Andreas Bolka 
							
						 
					 
					
						
						
							
						
						acd6f8d5d1 
					 
					
						
						
							
							Fix case in LDA util function names.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74415  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-06-29 00:50:26 +00:00 
						 
				 
			
				
					
						
							
							
								Andreas Bolka 
							
						 
					 
					
						
						
							
						
						c6a303052b 
					 
					
						
						
							
							Print pairwise dependence results, add testcases.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74402  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-06-28 00:35:22 +00:00 
						 
				 
			
				
					
						
							
							
								Andreas Bolka 
							
						 
					 
					
						
						
							
						
						f35626d3cd 
					 
					
						
						
							
							Minimal LDA interface, maximally conservative tester.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74401  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-06-28 00:21:21 +00:00 
						 
				 
			
				
					
						
							
							
								Andreas Bolka 
							
						 
					 
					
						
						
							
						
						707207adae 
					 
					
						
						
							
							LDA analysis output scaffolding.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74400  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-06-28 00:16:08 +00:00 
						 
				 
			
				
					
						
							
							
								Andreas Bolka 
							
						 
					 
					
						
						
							
						
						cb21010fa0 
					 
					
						
						
							
							Scaffolding for LDA pass.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74120  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-06-24 21:29:13 +00:00