Owen Anderson
							
						 | 
						
							
							
							
							
							
								
							
							
								09b83ba6f1
								
							
						 | 
						
							
							
								
								Allow GVN to eliminate redundant calls to functions without side effects.
							
							
							
							
							
							
							
							llvm-svn: 43147 
							
						 | 
						
							2007-10-18 19:39:33 +00:00 | 
						
					
				
					
						
							
							
								 
								Owen Anderson
							
						 | 
						
							
							
							
							
							
								
							
							
								46da2a6262
								
							
						 | 
						
							
							
								
								Add partial caching of non-local memory dependence queries.  This provides a modest
							
							
							
							
							
							
							
							speedup for GVN.
llvm-svn: 42185 
							
						 | 
						
							2007-09-21 03:53:52 +00:00 | 
						
					
				
					
						
							
							
								 
								Chris Lattner
							
						 | 
						
							
							
							
							
							
								
							
							
								0625bd6472
								
							
						 | 
						
							
							
								
								Merge DenseMapKeyInfo & DenseMapValueInfo into DenseMapInfo
							
							
							
							
							
							
							
							Add a new DenseMapInfo::isEqual method to allow clients to redefine
the equality predicate used when probing the hash table.
llvm-svn: 42042 
							
						 | 
						
							2007-09-17 18:34:04 +00:00 | 
						
					
				
					
						
							
							
								 
								Owen Anderson
							
						 | 
						
							
							
							
							
							
								
							
							
								4cd516b50b
								
							
						 | 
						
							
							
								
								Be more careful when constant-folding PHI nodes.
							
							
							
							
							
							
							
							llvm-svn: 41998 
							
						 | 
						
							2007-09-16 08:04:16 +00:00 | 
						
					
				
					
						
							
							
								 
								Owen Anderson
							
						 | 
						
							
							
							
							
							
								
							
							
								f5023a7a84
								
							
						 | 
						
							
							
								
								Factor out some code into a helper function.
							
							
							
							
							
							
							
							llvm-svn: 41131 
							
						 | 
						
							2007-08-16 22:51:56 +00:00 | 
						
					
				
					
						
							
							
								 
								Owen Anderson
							
						 | 
						
							
							
							
							
							
								
							
							
								221a43604e
								
							
						 | 
						
							
							
								
								Add some more comments to GVN.
							
							
							
							
							
							
							
							llvm-svn: 41129 
							
						 | 
						
							2007-08-16 22:02:55 +00:00 | 
						
					
				
					
						
							
							
								 
								Owen Anderson
							
						 | 
						
							
							
							
							
							
								
							
							
								bc271a02fd
								
							
						 | 
						
							
							
								
								Eliminate PHI nodes with constant values during normal GVN processing, even when
							
							
							
							
							
							
							
							they're not related to eliminating a load.
llvm-svn: 41081 
							
						 | 
						
							2007-08-14 18:33:27 +00:00 | 
						
					
				
					
						
							
							
								 
								Owen Anderson
							
						 | 
						
							
							
							
							
							
								
							
							
								398602a6eb
								
							
						 | 
						
							
							
								
								Be more aggressive in pruning unnecessary PHI nodes when doing PHI construction.
							
							
							
							
							
							
							
							llvm-svn: 41080 
							
						 | 
						
							2007-08-14 18:16:29 +00:00 | 
						
					
				
					
						
							
							
								 
								Owen Anderson
							
						 | 
						
							
							
							
							
							
								
							
							
								676070d503
								
							
						 | 
						
							
							
								
								Make GVN iterative.
							
							
							
							
							
							
							
							llvm-svn: 41078 
							
						 | 
						
							2007-08-14 18:04:11 +00:00 | 
						
					
				
					
						
							
							
								 
								Owen Anderson
							
						 | 
						
							
							
							
							
							
								
							
							
								a7b220f23a
								
							
						 | 
						
							
							
								
								Fix a case where GVN was failing to return true when it had, in fact, modified
							
							
							
							
							
							
							
							the function.
llvm-svn: 41077 
							
						 | 
						
							2007-08-14 17:59:48 +00:00 | 
						
					
				
					
						
							
							
								 
								Owen Anderson
							
						 | 
						
							
							
							
							
							
								
							
							
								9b1cc8cac0
								
							
						 | 
						
							
							
								
								Make NonLocal and None const in the right way. :-)
							
							
							
							
							
							
							
							llvm-svn: 40961 
							
						 | 
						
							2007-08-09 04:42:44 +00:00 | 
						
					
				
					
						
							
							
								 
								Owen Anderson
							
						 | 
						
							
							
							
							
							
								
							
							
								b84d3b1c92
								
							
						 | 
						
							
							
								
								Change the None and NonLocal markers in memdep to be const.
							
							
							
							
							
							
							
							llvm-svn: 40946 
							
						 | 
						
							2007-08-08 21:39:39 +00:00 | 
						
					
				
					
						
							
							
								 
								Owen Anderson
							
						 | 
						
							
							
							
							
							
								
							
							
								0cc1a76283
								
							
						 | 
						
							
							
								
								Don't insert nearly as many redundant phi nodes.
							
							
							
							
							
							
							
							llvm-svn: 40909 
							
						 | 
						
							2007-08-07 23:12:31 +00:00 | 
						
					
				
					
						
							
							
								 
								Owen Anderson
							
						 | 
						
							
							
							
							
							
								
							
							
								2d19aae4ca
								
							
						 | 
						
							
							
								
								Fix a subtle miscompilation.  This allows 197.parser to be compiled correctly.
							
							
							
							
							
							
							
							llvm-svn: 40791 
							
						 | 
						
							2007-08-03 19:59:35 +00:00 | 
						
					
				
					
						
							
							
								 
								Owen Anderson
							
						 | 
						
							
							
							
							
							
								
							
							
								774761c503
								
							
						 | 
						
							
							
								
								Fix a subtle iterator invalidation bug in a recursive algorithm.
							
							
							
							
							
							
							
							llvm-svn: 40776 
							
						 | 
						
							2007-08-03 11:03:26 +00:00 | 
						
					
				
					
						
							
							
								 
								Owen Anderson
							
						 | 
						
							
							
							
							
							
								
							
							
								9699a6ea03
								
							
						 | 
						
							
							
								
								Fix 80 col. violations.
							
							
							
							
							
							
							
							llvm-svn: 40750 
							
						 | 
						
							2007-08-02 18:16:06 +00:00 | 
						
					
				
					
						
							
							
								 
								Owen Anderson
							
						 | 
						
							
							
							
							
							
								
							
							
								0ac1fc8ac1
								
							
						 | 
						
							
							
								
								Fix a bug that was causing several miscompilations on SPEC.
							
							
							
							
							
							
							
							llvm-svn: 40746 
							
						 | 
						
							2007-08-02 17:56:05 +00:00 | 
						
					
				
					
						
							
							
								 
								Owen Anderson
							
						 | 
						
							
							
							
							
							
								
							
							
								c321e5e272
								
							
						 | 
						
							
							
								
								Make non-local memdep not be recursive, and fix a bug on 403.gcc that this exposed.
							
							
							
							
							
							
							
							llvm-svn: 40692 
							
						 | 
						
							2007-08-01 22:01:54 +00:00 | 
						
					
				
					
						
							
							
								 
								Owen Anderson
							
						 | 
						
							
							
							
							
							
								
							
							
								10ffa860d8
								
							
						 | 
						
							
							
								
								Don't let the memory allocator outsmart GVN. ;-)
							
							
							
							
							
							
							
							llvm-svn: 40655 
							
						 | 
						
							2007-07-31 23:27:13 +00:00 | 
						
					
				
					
						
							
							
								 
								Owen Anderson
							
						 | 
						
							
							
							
							
							
								
							
							
								2464f4f048
								
							
						 | 
						
							
							
								
								Fix a failure I accidentally caused in my last commit by mishandling the
							
							
							
							
							
							
							
							removal of redundant phis.
llvm-svn: 40650 
							
						 | 
						
							2007-07-31 20:18:28 +00:00 | 
						
					
				
					
						
							
							
								 
								Owen Anderson
							
						 | 
						
							
							
							
							
							
								
							
							
								d58fa6b09f
								
							
						 | 
						
							
							
								
								Fix a misoptimization in aha.
							
							
							
							
							
							
							
							llvm-svn: 40642 
							
						 | 
						
							2007-07-31 17:43:14 +00:00 | 
						
					
				
					
						
							
							
								 
								Owen Anderson
							
						 | 
						
							
							
							
							
							
								
							
							
								850138157e
								
							
						 | 
						
							
							
								
								Avoid potential iterator invalidation problems.
							
							
							
							
							
							
							
							llvm-svn: 40607 
							
						 | 
						
							2007-07-30 21:26:39 +00:00 | 
						
					
				
					
						
							
							
								 
								Owen Anderson
							
						 | 
						
							
							
							
							
							
								
							
							
								212d5c27f6
								
							
						 | 
						
							
							
								
								Use more caching when computing non-local dependence.  This makes bzip2 not
							
							
							
							
							
							
							
							use up the entire 32-bit address space.
llvm-svn: 40596 
							
						 | 
						
							2007-07-30 17:29:24 +00:00 | 
						
					
				
					
						
							
							
								 
								Owen Anderson
							
						 | 
						
							
							
							
							
							
								
							
							
								d66e285b2e
								
							
						 | 
						
							
							
								
								Fix a bug caused by indiscriminantly asking for the dominators of a predecessor.
							
							
							
							
							
							
							
							llvm-svn: 40595 
							
						 | 
						
							2007-07-30 16:57:08 +00:00 | 
						
					
				
					
						
							
							
								 
								Owen Anderson
							
						 | 
						
							
							
							
							
							
								
							
							
								dbf23ccaa0
								
							
						 | 
						
							
							
								
								Fix a couple more bugs in the phi construction by pulling in code that does
							
							
							
							
							
							
							
							almost the same things from LCSSA.
llvm-svn: 40540 
							
						 | 
						
							2007-07-26 18:26:51 +00:00 | 
						
					
				
					
						
							
							
								 
								Owen Anderson
							
						 | 
						
							
							
							
							
							
								
							
							
								3b8cc30a61
								
							
						 | 
						
							
							
								
								Fix what is _hopefully_ the last corner case for loops.
							
							
							
							
							
							
							
							llvm-svn: 40503 
							
						 | 
						
							2007-07-25 23:54:42 +00:00 | 
						
					
				
					
						
							
							
								 
								Owen Anderson
							
						 | 
						
							
							
							
							
							
								
							
							
								8707412593
								
							
						 | 
						
							
							
								
								My last commit was not correct for nested loops.  Fix it, and add a testcase for it.
							
							
							
							
							
							
							
							llvm-svn: 40498 
							
						 | 
						
							2007-07-25 22:19:40 +00:00 | 
						
					
				
					
						
							
							
								 
								Owen Anderson
							
						 | 
						
							
							
							
							
							
								
							
							
								3c67004d47
								
							
						 | 
						
							
							
								
								Fix an infinite loop on 300.twolf.
							
							
							
							
							
							
							
							llvm-svn: 40497 
							
						 | 
						
							2007-07-25 22:03:06 +00:00 | 
						
					
				
					
						
							
							
								 
								Owen Anderson
							
						 | 
						
							
							
							
							
							
								
							
							
								7bf26ee444
								
							
						 | 
						
							
							
								
								Fix a bug that was causing GVN to crash on 252.eon.
							
							
							
							
							
							
							
							llvm-svn: 40494 
							
						 | 
						
							2007-07-25 21:13:41 +00:00 | 
						
					
				
					
						
							
							
								 
								Owen Anderson
							
						 | 
						
							
							
							
							
							
								
							
							
								5e5599b7ce
								
							
						 | 
						
							
							
								
								Add basic support for performing whole-function RLE.
							
							
							
							
							
							
							
							Note: This has not yet been thoroughly tested.  Use at your own risk.
llvm-svn: 40489 
							
						 | 
						
							2007-07-25 19:57:03 +00:00 | 
						
					
				
					
						
							
							
								 
								Owen Anderson
							
						 | 
						
							
							
							
							
							
								
							
							
								ab6ec2eac2
								
							
						 | 
						
							
							
								
								Add a GVN pass, using the value numbering code I developed for GVNPRE and the
							
							
							
							
							
							
							
							load elimination code from RedundantLoadElimination.
llvm-svn: 40469 
							
						 | 
						
							2007-07-24 17:55:58 +00:00 |