Dan Gohman 
							
						 
					 
					
						
						
							
						
						c71c0e958c 
					 
					
						
						
							
							Remove unnecessary #includes.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91293  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-14 17:19:06 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						d3222b4224 
					 
					
						
						
							
							Instead of having a ScalarEvolution pointer member in BasedUser, just pass  
						
						... 
						
						
						
						the ScalarEvolution pointer into the functions which need it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91289  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-14 17:12:51 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						a77d588c75 
					 
					
						
						
							
							Don't bother cleaning up if there's nothing to clean up.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91288  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-14 17:10:44 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						6dc1ef3923 
					 
					
						
						
							
							Delete an unused variable.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91287  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-14 17:08:09 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						1ed8bb3556 
					 
					
						
						
							
							LSR itself doesn't need LoopInfo.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91283  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-14 17:02:34 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						c398365349 
					 
					
						
						
							
							LSR itself doesn't need DominatorTree.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91282  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-14 16:57:08 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						67b94fb73d 
					 
					
						
						
							
							Remove the code in LSR that manually hoists expansions out of loops;  
						
						... 
						
						
						
						SCEVExpander does this automatically.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91281  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-14 16:52:55 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						b058ceda56 
					 
					
						
						
							
							Minor code cleanups.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91280  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-14 16:37:29 +00:00 
						 
				 
			
				
					
						
							
							
								Jim Grosbach 
							
						 
					 
					
						
						
							
						
						5023095799 
					 
					
						
						
							
							grammar  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89145  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-11-17 21:37:04 +00:00 
						 
				 
			
				
					
						
							
							
								Jim Grosbach 
							
						 
					 
					
						
						
							
						
						464ecfee71 
					 
					
						
						
							
							80-column violations  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89123  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-11-17 19:05:35 +00:00 
						 
				 
			
				
					
						
							
							
								Evan Cheng 
							
						 
					 
					
						
						
							
						
						076e085698 
					 
					
						
						
							
							Generalize OptimizeLoopTermCond to optimize more loop terminating icmp to use postinc iv.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89116  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-11-17 18:10:11 +00:00 
						 
				 
			
				
					
						
							
							
								Jim Grosbach 
							
						 
					 
					
						
						
							
						
						56a1f806af 
					 
					
						
						
							
							Remove trailing whitespace  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89110  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-11-17 17:53:56 +00:00 
						 
				 
			
				
					
						
							
							
								Evan Cheng 
							
						 
					 
					
						
						
							
						
						586f69a118 
					 
					
						
						
							
							- Teach LSR to avoid changing cmp iv stride if it will create an immediate that  
						
						... 
						
						
						
						cannot be folded into target cmp instruction.
- Avoid a phase ordering issue where early cmp optimization would prevent the
  later count-to-zero optimization.
- Add missing checks which could cause LSR to reuse stride that does not have
  users.
- Fix a bug in count-to-zero optimization code which failed to find the pre-inc
  iv's phi node.
- Remove, tighten, loosen some incorrect checks disable valid transformations.
- Quite a bit of code clean up.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86969  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-11-12 07:35:05 +00:00 
						 
				 
			
				
					
						
							
							
								Evan Cheng 
							
						 
					 
					
						
						
							
						
						f40888dc9b 
					 
					
						
						
							
							Block terminator may be a switch.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86761  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-11-11 00:00:21 +00:00 
						 
				 
			
				
					
						
							
							
								Evan Cheng 
							
						 
					 
					
						
						
							
						
						81ebdcf7dd 
					 
					
						
						
							
							Generalize lsr code that optimize loop to count down towards zero.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86715  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-11-10 21:14:05 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						eb3567cd49 
					 
					
						
						
							
							Teach LSR to avoid calling SplitCriticalEdge on edges with indirectbr.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86193  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-11-05 23:34:59 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						03e896bd60 
					 
					
						
						
							
							Update various Loop optimization passes to cope with the possibility that  
						
						... 
						
						
						
						LoopSimplify form may not be available.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86175  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-11-05 21:11:53 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						a8225083ba 
					 
					
						
						
							
							Make LSR's OptimizeShadowIV ignore induction variables with negative  
						
						... 
						
						
						
						strides for now, because it doesn't handle them correctly. This fixes a
miscompile of SingleSource/Benchmarks/Misc-C++/ray.
This problem was usually hidden because indvars transforms such induction
variables into negations of canonical induction variables.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85118  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-10-26 15:32:57 +00:00 
						 
				 
			
				
					
						
							
							
								Nick Lewycky 
							
						 
					 
					
						
						
							
						
						4a134afaef 
					 
					
						
						
							
							Remove ICmpInst::isSignedPredicate which was a reimplementation  
						
						... 
						
						
						
						CmpInst::isSigned.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85037  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-10-25 05:20:17 +00:00 
						 
				 
			
				
					
						
							
							
								Nick Lewycky 
							
						 
					 
					
						
						
							
						
						6776064d19 
					 
					
						
						
							
							Instruction::clone does not need to take an LLVMContext&. Remove that and  
						
						... 
						
						
						
						update all the callers.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82889  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-09-27 07:38:41 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						5c89b5240c 
					 
					
						
						
							
							Re-apply r80926, with fixes: keep the domtree informed of new blocks  
						
						... 
						
						
						
						that get created during loop unswitching, and fix SplitBlockPredecessors'
LCSSA updating code to create new PHIs instead of trying to just move
existing ones.
Also, optimize Loop::verifyLoop, since it gets called a lot. Use
searches on a sorted list of blocks instead of calling the "contains"
function, as is done in other places in the Loop class, since "contains"
does a linear search. Also, don't call verifyLoop from LoopSimplify or
LCSSA, as the PassManager is already calling verifyLoop as part of
LoopInfo's verifyAnalysis.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81221  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-09-08 15:45:00 +00:00 
						 
				 
			
				
					
						
							
							
								Evan Cheng 
							
						 
					 
					
						
						
							
						
						8f78a58e14 
					 
					
						
						
							
							Revert r80926. It causes loop unswitch assertion and slow down some JIT tests significantly.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81101  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-09-06 02:26:10 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						8fc5ad3369 
					 
					
						
						
							
							Add a verifyAnalysis to LoopInfo, LoopSimplify, and LCSSA form that verify  
						
						... 
						
						
						
						that these passes are properly preserved.
Fix several transformation passes that claimed to preserve LoopSimplify
form but weren't.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80926  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-09-03 16:31:42 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						3e8b6631e6 
					 
					
						
						
							
							eliminate VISIBILITY_HIDDEN from Transforms/Scalar.  PR4861  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80766  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-09-02 06:11:42 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						bdff548e4d 
					 
					
						
						
							
							eliminate the "Value" printing methods that print to a std::ostream.  
						
						... 
						
						
						
						This required converting a bunch of stuff off DOUT and other cleanups.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79819  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-08-23 04:37:46 +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 
						 
				 
			
				
					
						
							
							
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						e50ed30282 
					 
					
						
						
							
							Rename MVT to EVT, in preparation for splitting SimpleValueType out into its own struct type.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78610  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-08-10 22:56:29 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						3fe14bf153 
					 
					
						
						
							
							Check for !isa<Constant> instead of isa<Instruction>. This  
						
						... 
						
						
						
						matches what the comment says, and it avoids spurious BitCast
instructions for Argument values.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78121  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-08-04 23:23:56 +00:00 
						 
				 
			
				
					
						
							
							
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						a7235ea724 
					 
					
						
						
							
							Move a few more APIs back to 2.5 forms.  The only remaining ones left to change back are  
						
						... 
						
						
						
						metadata related, which I'm waiting on to avoid conflicting with Devang.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77721  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-31 20:28:14 +00:00 
						 
				 
			
				
					
						
							
							
								Douglas Gregor 
							
						 
					 
					
						
						
							
						
						f485b3bbab 
					 
					
						
						
							
							Eliminate a few unused-variable warnings  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77519  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-29 22:41:10 +00:00 
						 
				 
			
				
					
						
							
							
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						debcb01b0f 
					 
					
						
						
							
							Move types back to the 2.5 API.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77516  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-29 22:17:13 +00:00 
						 
				 
			
				
					
						
							
							
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						baf3c40440 
					 
					
						
						
							
							Move ConstantExpr to 2.5 API.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77494  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-29 18:55:55 +00:00 
						 
				 
			
				
					
						
							
							
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						6f83c9c6ef 
					 
					
						
						
							
							Move ConstantFP construction back to the 2.5-ish API.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77247  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-27 20:59:43 +00:00 
						 
				 
			
				
					
						
							
							
								Daniel Dunbar 
							
						 
					 
					
						
						
							
						
						460f656475 
					 
					
						
						
							
							Remove Value::getName{Start,End}, the last of the old Name APIs.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77152  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-26 09:48:23 +00:00 
						 
				 
			
				
					
						
							
							
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						eed707b1e6 
					 
					
						
						
							
							Revert the ConstantInt constructors back to their 2.5 forms where possible, thanks to contexts-on-types.  More to come.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77011  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-24 23:12:02 +00:00 
						 
				 
			
				
					
						
							
							
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						e922c02019 
					 
					
						
						
							
							Get rid of the Pass+Context magic.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76702  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-22 00:24:57 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						c8d76d5afb 
					 
					
						
						
							
							Make Loop and MachineLoop be subclasses of LoopBase, rather than typedefs,  
						
						... 
						
						
						
						using the Curiously Recurring Template Pattern with LoopBase.
This will help further refactoring, and future functionality for
Loop. Also, Headers can now foward-declare Loop, instead of pulling
in LoopInfo.h or doing tricks.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75519  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-13 21:51:15 +00:00 
						 
				 
			
				
					
						
							
							
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						333c400965 
					 
					
						
						
							
							This started as a small change, I swear.  Unfortunately, lots of things call the [I|F]CmpInst constructors.  Who knew!?  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75200  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-09 23:48:35 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						0bba49cebc 
					 
					
						
						
							
							Change all SCEV* to SCEV *.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74918  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-07 17:06:11 +00:00 
						 
				 
			
				
					
						
							
							
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						1ff50b380e 
					 
					
						
						
							
							Second batch of passes using LLVMContext.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74753  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-07-03 00:54:20 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						40a5a1b39e 
					 
					
						
						
							
							Extend ScalarEvolution's multiple-exit support to compute exact  
						
						... 
						
						
						
						trip counts in more cases.
Generalize ScalarEvolution's isLoopGuardedByCond code to recognize
And and Or conditions, splitting the code out into an
isNecessaryCond helper function so that it can evaluate Ands and Ors
recursively, and make SCEVExpander be much more aggressive about
hoisting instructions out of loops.
test/CodeGen/X86/pr3495.ll has an additional instruction now, but
it appears to be due to an arbitrary register allocation difference.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74048  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-06-24 01:18:18 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						ea080be986 
					 
					
						
						
							
							Don't emit a redundant BitCastInst if the value to be defined in the  
						
						... 
						
						
						
						preheader is already an instruction.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74031  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-06-24 00:28:59 +00:00 
						 
				 
			
				
					
						
							
							
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						372b46cad9 
					 
					
						
						
							
							SCEVHandle is no more!  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73906  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-06-22 21:39:50 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						5392dce881 
					 
					
						
						
							
							Rename a variable for consistency with the ExitBlock vs ExitingBlock  
						
						... 
						
						
						
						terminology that LoopInfo uses.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73863  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-06-21 23:48:38 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						224a19c490 
					 
					
						
						
							
							Fix a typo in a comment that Frits von Bommel noticed.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73796  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-06-19 23:41:37 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						2781f30eac 
					 
					
						
						
							
							Re-apply r73718, now that the fix in r73787 is in, and add a  
						
						... 
						
						
						
						hand-crafted testcase which demonstrates the bug that was exposed
in 254.gap.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73793  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-06-19 23:23:27 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						4d1c1efd80 
					 
					
						
						
							
							Fix LSR's OptimizeSMax to ignore max operators with more than 2 operands,  
						
						... 
						
						
						
						which it isn't prepared to handle.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73787  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-06-19 23:03:46 +00:00 
						 
				 
			
				
					
						
							
							
								Evan Cheng 
							
						 
					 
					
						
						
							
						
						73a76736fb 
					 
					
						
						
							
							Revert 73718. It's breaking 254.gap.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73783  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-06-19 21:15:06 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						4658c9b4ea 
					 
					
						
						
							
							Generalize LSR's OptimizeSMax to handle unsigned max tests as well  
						
						... 
						
						
						
						as signed max tests. Along with r73717, this helps CodeGen avoid
emitting code for a maximum operation for this class of loop.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73718  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-06-18 20:23:18 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						4e8a98519e 
					 
					
						
						
							
							Remove the code from IVUsers that attempted to handle  
						
						... 
						
						
						
						casted induction variables in cases where the cast
isn't foldable. It ended up being a pessimization in
many cases. This could be fixed, but it would require
a bunch of complicated code in IVUsers' clients. The
advantages of this approach aren't visible enough to
justify it at this time.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73706  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-06-18 16:54:06 +00:00