Owen Anderson 
							
						 
					 
					
						
						
							
						
						f2204d7bb1 
					 
					
						
						
							
							Really disable PRE.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52531  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-06-20 08:59:13 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						2de3fec61c 
					 
					
						
						
							
							Fix PR2471, which is a bug involving an invalid promotion from a conditional load.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52525  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-06-20 05:12:56 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						6fafe847b2 
					 
					
						
						
							
							Change around the data structures used to store availability sets, resulting in a GVN+PRE that is faster that GVN alone was before.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52521  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-06-20 01:15:47 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						c4b65ea56b 
					 
					
						
						
							
							Teach SCCP about insertvalue and extractvalue, and about  
						
						 
						
						... 
						
						
						
						propagating constants across aggregate return values when
insertvalue and extractvalue are used.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52520  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-06-20 01:15:44 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						2c31750cd0 
					 
					
						
						
							
							Teach InlineFunction how to differentiate between multiple-value  
						
						 
						
						... 
						
						
						
						return statements and aggregate returns so that it handles both
correctly.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52519  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-06-20 01:03:44 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Evan Cheng 
							
						 
					 
					
						
						
							
						
						88d11c03cd 
					 
					
						
						
							
							Disable PRE for now. It seems to be breaking llvm-gcc bootstrapping.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52518  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-06-20 01:01:07 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						aa0b63422a 
					 
					
						
						
							
							Add a hidden -disable-pre flag for testing purposes.  This should be removed  
						
						 
						
						... 
						
						
						
						once benchmarking is completed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52506  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-06-19 19:57:25 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						5c274eebc6 
					 
					
						
						
							
							PRE requires that critical edges be split.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52505  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-06-19 19:54:19 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						ac151da204 
					 
					
						
						
							
							Remove dead code causing a warning.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52502  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-06-19 18:00:44 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						52d36e6f87 
					 
					
						
						
							
							Use the common API for adding instructions to basic blocks instead of  
						
						 
						
						... 
						
						
						
						using BasicBlock::getInstList.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52500  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-06-19 17:53:32 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						9da52dce89 
					 
					
						
						
							
							Be sure to remove values from the value numbering table after we delete them.  
						
						 
						
						... 
						
						
						
						This fixes a failure on povray.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52499  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-06-19 17:53:26 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						d02d917c72 
					 
					
						
						
							
							Use Instruction::moveBefore instead of manipulating the instruction list  
						
						 
						
						... 
						
						
						
						directly.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52498  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-06-19 17:47:47 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						610c0e2b40 
					 
					
						
						
							
							Avoid using BasicBlock::getInstList directly in a few places.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52497  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-06-19 17:37:25 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						3cd8eb314a 
					 
					
						
						
							
							Revert support for insertvalue and extractvalue instructions for the moment.  
						
						 
						
						... 
						
						
						
						GVN expects that all inputs which to an instruction fall somewhere in the value
hierarchy, which isn't true for these.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52496  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-06-19 17:25:39 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						f3dc70092c 
					 
					
						
						
							
							Delete dead code.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52494  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-06-19 17:18:39 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Matthijs Kooijman 
							
						 
					 
					
						
						
							
						
						f0da2039d1 
					 
					
						
						
							
							Use a CallSite to find the nth argument of a call/invoke instruction instead of  
						
						 
						
						... 
						
						
						
						using getOperand() directly. This makes things work with invoke instructions as
well.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52489  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-06-19 08:53:24 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						d34ac6e782 
					 
					
						
						
							
							Add support for extractvalue and insertvalue instructions in GVN.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52472  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-06-18 21:59:00 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						b230372437 
					 
					
						
						
							
							Add local PRE to GVN.  This only operates in cases where it would not increase code size, namely when the instantiated expression  
						
						 
						
						... 
						
						
						
						would only need to be created in one predecessor.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52471  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-06-18 21:41:49 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						6c3bfba06e 
					 
					
						
						
							
							Fix the regressions on sext-misc.ll my patch yesterday caused.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52466  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-06-18 18:11:55 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						bb3761c9e5 
					 
					
						
						
							
							Revert r52459, which was causing an infinite loop or massive slowdown on MultiSource/Applications/SPASS, and possibly others as well.  
						
						 
						
						... 
						
						
						
						Please reapply once this is fixed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52465  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-06-18 17:32:16 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						cfeb6a4506 
					 
					
						
						
							
							Move LSR's private isZero function to a public SCEV member  
						
						 
						
						... 
						
						
						
						function, and make use of it in several places.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52463  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-06-18 16:23:07 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Matthijs Kooijman 
							
						 
					 
					
						
						
							
						
						ca85d65277 
					 
					
						
						
							
							Rewrite the DeadArgumentElimination pass, to use a more explicit tracking of  
						
						 
						
						... 
						
						
						
						dependencies between return values and/or arguments. Also make the handling of
arguments and return values the same.
The pass now looks properly inside returned structs, but only at the first                                                                                     
level (ie, not inside nested structs).
Also add a testcase for testing various variations of (multiple) dead rerturn
values.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52459  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-06-18 11:12:53 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Matthijs Kooijman 
							
						 
					 
					
						
						
							
						
						c2afe89019 
					 
					
						
						
							
							Reapply r52397 (make IPConstProp promote returned arguments), but fixed this  
						
						 
						
						... 
						
						
						
						time. Sorry for the trouble!
This time, also add a testcase, which I should have done in the first place...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52455  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-06-18 08:30:37 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Matthijs Kooijman 
							
						 
					 
					
						
						
							
						
						8b0fcf38ef 
					 
					
						
						
							
							Reapply r52396, it was unrelated to the breakage (that was caused by r52397, my  
						
						 
						
						... 
						
						
						
						commit after this).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52453  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-06-18 08:09:27 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						0521e3cdc1 
					 
					
						
						
							
							implement some simple bswap optimizations, rdar://5992453  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52442  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-06-18 04:33:20 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						8114b718c9 
					 
					
						
						
							
							make truncate/sext elimination capable of changing phi's.  This  
						
						 
						
						... 
						
						
						
						implements rdar://6013816 and the testcase in Transforms/InstCombine/sext-misc.ll.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52440  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-06-18 04:00:49 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Devang Patel 
							
						 
					 
					
						
						
							
						
						64cd658223 
					 
					
						
						
							
							Preserve dominance frontier while trivially unswitching loop.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52438  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-06-18 02:16:38 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						2960ed4b85 
					 
					
						
						
							
							We don't want to find dependencies within the same block in this case.  It leads to incorrect results because  
						
						 
						
						... 
						
						
						
						we're detecting something at or after the call we're querying on.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52433  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-06-17 22:27:06 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						fc329f4fa1 
					 
					
						
						
							
							revert recent patch which is causing widespread breakage.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52415  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-06-17 17:06:43 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Duncan Sands 
							
						 
					 
					
						
						
							
						
						34b176a181 
					 
					
						
						
							
							Fix typo that changed the logic to something wrong.  
						
						 
						
						... 
						
						
						
						Spotted by Nick Lewycky.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52411  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-06-17 15:55:30 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Matthijs Kooijman 
							
						 
					 
					
						
						
							
						
						2fbabf6e6d 
					 
					
						
						
							
							Learn IPConstProp to propagate arguments that are directly returned. Strictly  
						
						 
						
						... 
						
						
						
						speaking these are not constant values. However, when a function always returns
one of its arguments, then from the point of view of each caller the return
value is constant (or at least a known value) and can be replaced.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52397  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-06-17 12:20:24 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Matthijs Kooijman 
							
						 
					 
					
						
						
							
						
						906e423724 
					 
					
						
						
							
							Learn IPConstProp to look at individual return values and propagate them  
						
						 
						
						... 
						
						
						
						individually.
Also learn IPConstProp how returning first class aggregates work, in addition
to old style multiple return instructions.
Modify the return-constants testscase to confirm this behaviour.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52396  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-06-17 12:02:52 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						9b93dd1f1a 
					 
					
						
						
							
							Refine the change in r52258 for avoiding use-before-def conditions  
						
						 
						
						... 
						
						
						
						when changing the stride of a comparison so that it's slightly
more precise, by having it scan the instruction list to determine
if there is a use of the condition after the point where the
condition will be inserted.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52371  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-06-16 22:34:15 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Evan Cheng 
							
						 
					 
					
						
						
							
						
						72b7b098c7 
					 
					
						
						
							
							Switch over to SetVector to ensure same order of iterations do not vary across runs.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52361  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-06-16 21:08:17 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Evan Cheng 
							
						 
					 
					
						
						
							
						
						69d5053f9c 
					 
					
						
						
							
							Iterating over SmallPtrSet is not deterministic.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52339  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-06-16 18:17:09 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Matthijs Kooijman 
							
						 
					 
					
						
						
							
						
						0a7413dad8 
					 
					
						
						
							
							Pass around Instruction* instead of Instruction& in FindInsertedValue and friends.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52318  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-06-16 13:13:08 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Matthijs Kooijman 
							
						 
					 
					
						
						
							
						
						710eb236e6 
					 
					
						
						
							
							80 column fixes.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52316  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-06-16 12:57:37 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Matthijs Kooijman 
							
						 
					 
					
						
						
							
						
						b23d5adbc8 
					 
					
						
						
							
							Move FindScalarValue from InstructionCombining.cpp to ValueTracking.cpp. While  
						
						 
						
						... 
						
						
						
						I'm at it, rename it to FindInsertedValue.
The only functional change is that newly created instructions are no longer
added to instcombine's worklist, but that is not really necessary anyway (and
I'll commit some improvements next that will completely remove the need).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52315  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-06-16 12:48:21 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						077707ccc0 
					 
					
						
						
							
							Fix the crash on SimplifyLibCalls/2005-05-20-sprintf-crash.ll  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52295  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-06-16 04:10:21 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						c5dc660ea0 
					 
					
						
						
							
							Fix a case where tailcallelim wouldn't set the changed bit when it made a change.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52267  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-06-14 00:49:48 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Eli Friedman 
							
						 
					 
					
						
						
							
						
						6903a24f32 
					 
					
						
						
							
							Don't skip over instructions other than loads that might read memory  
						
						 
						
						... 
						
						
						
						when trying to sink stores.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52259  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-06-13 22:02:12 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						e562b1725e 
					 
					
						
						
							
							Protect ChangeCompareStride from situations in which it is possible  
						
						 
						
						... 
						
						
						
						for it to generate use-before-def IR, such as in this testcase.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52258  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-06-13 21:43:41 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Eli Friedman 
							
						 
					 
					
						
						
							
						
						66fe80aa57 
					 
					
						
						
							
							Make sure SimplifyStoreAtEndOfBlock doesn't mess with loops; the  
						
						 
						
						... 
						
						
						
						structure checks are incorrect if the blocks aren't distinct.
Fixes PR2435.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52257  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-06-13 21:17:49 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Wojciech Matyjewicz 
							
						 
					 
					
						
						
							
						
						900872186d 
					 
					
						
						
							
							Use recently added getTruncateOrZeroExtend method to make the code shorter.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52251  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-06-13 17:02:03 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Gabor Greif 
							
						 
					 
					
						
						
							
						
						52ed363fd3 
					 
					
						
						
							
							fix a minor deviation from the original in my previous commit  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52247  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-06-12 21:51:29 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Gabor Greif 
							
						 
					 
					
						
						
							
						
						177dd3ff11 
					 
					
						
						
							
							op_iterator-ify some loops, low hanging fruit only, there is more  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52246  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-06-12 21:37:33 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Evan Cheng 
							
						 
					 
					
						
						
							
						
						502a4f5162 
					 
					
						
						
							
							Do not speculatively execute an instruction by hoisting it to its predecessor BB if any of its operands are defined but not used in BB. The transformation will prevent the operand from being sunk into the use block.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52244  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-06-12 21:15:59 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Evan Cheng 
							
						 
					 
					
						
						
							
						
						0d0ca8572f 
					 
					
						
						
							
							Revert 52223.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52243  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-06-12 20:55:39 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						af4240ac2d 
					 
					
						
						
							
							Switch GVN to use ScopedHashTable.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52242  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-06-12 19:25:32 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Gabor Greif 
							
						 
					 
					
						
						
							
						
						6725cb5f1c 
					 
					
						
						
							
							op_iterator-ify some loops, fix 80col violations  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52226  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-06-11 21:38:51 +00:00