Chris Lattner 
							
						 
					 
					
						
						
							
						
						d84dfa43f2 
					 
					
						
						
							
							inline and remove the rest of commonIntCastTransforms.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93091  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-01-10 01:00:46 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						75215c9e39 
					 
					
						
						
							
							Inline the expression type promotion/demotion stuff out of  
						
						... 
						
						
						
						commonIntCastTransforms into the callers, eliminating a switch,
and allowing the static predicate  methods to be moved down to
live next to the corresponding function.  No functionality 
change.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93089  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-01-10 00:58:42 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						c8b3fce5c5 
					 
					
						
						
							
							mplement a theoretical fixme.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93024  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-01-08 19:28:47 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						14bf8f0285 
					 
					
						
						
							
							rename CanEvaluateInDifferentType -> CanEvaluateTruncated and  
						
						... 
						
						
						
						simplify it now that it is only used for truncates.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93021  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-01-08 19:19:23 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						075f692939 
					 
					
						
						
							
							Enhance instcombine to reason more strongly about promoting computation  
						
						... 
						
						
						
						that feeds into a zext, similar to the patch I did yesterday for sext.
There is a lot of room for extension beyond this patch.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92962  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-01-07 23:41:00 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						5c24a6da29 
					 
					
						
						
							
							tweaks suggested by Duncan  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92824  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-01-06 05:32:15 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						e0e4cc7fd5 
					 
					
						
						
							
							Teach instcombine's sext elimination logic to be more aggressive.  
						
						... 
						
						
						
						Previously, instcombine would only promote an expression tree to
the larger type if doing so eliminated two casts.  This is because
a need to manually do the sign extend after the promoted expression
tree with two shifts.  Now, we keep track of whether the result of
the computation is going to be properly sign extended already.  If
so, we can unconditionally promote the expression, which allows us
to zap more sext's.
This implements rdar://6598839 (aka gcc pr38751)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92815  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-01-06 01:56:21 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						68c6e8998b 
					 
					
						
						
							
							simplify this code.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92800  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-01-05 23:00:30 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						94aab49339 
					 
					
						
						
							
							make this a static function instead of a method.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92795  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-01-05 22:30:42 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						7a34d6c450 
					 
					
						
						
							
							more rearrangement and cleanup, fix my test failure.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92792  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-01-05 22:21:18 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						274ad68cc7 
					 
					
						
						
							
							cleanup  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92790  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-01-05 22:07:33 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						c0f79af143 
					 
					
						
						
							
							remove two trunc xforms that are subsumed by EvaluateInDifferentType.  
						
						... 
						
						
						
						The only difference is that EvaluateInDifferentType checks to ensure
they are profitable before doing them :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92788  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-01-05 22:01:41 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						464dc81803 
					 
					
						
						
							
							just remove this xform which is subsumed by others.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92775  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-01-05 21:16:30 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						49bdfefc8d 
					 
					
						
						
							
							move a trunc-specific transform out of commonIntCastTransforms into visitTrunc.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92773  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-01-05 21:11:17 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						718bf3f89d 
					 
					
						
						
							
							move a zext specific xform out of commonIntCastTransforms into visitZExt and modernize it.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92770  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-01-05 21:04:47 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						f86d799a29 
					 
					
						
						
							
							move a trunc-specific xform out of commonIntCastTransforms into visitTrunc  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92768  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-01-05 20:57:30 +00:00 
						 
				 
			
				
					
						
							
							
								Benjamin Kramer 
							
						 
					 
					
						
						
							
						
						11acaa374c 
					 
					
						
						
							
							Convert a ton of simple integer type equality tests to the new predicate.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92760  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-01-05 20:07:06 +00:00 
						 
				 
			
				
					
						
							
							
								Benjamin Kramer 
							
						 
					 
					
						
						
							
						
						f012705c7e 
					 
					
						
						
							
							Avoid going through the LLVMContext for type equality where it's safe to dereference the type pointer.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92726  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-01-05 13:12:22 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						f3d1b5dd68 
					 
					
						
						
							
							move some more cast-related stuff  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92471  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-01-04 07:59:07 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						5f0290e0ef 
					 
					
						
						
							
							move the [Can]EvaluateInDifferentType functions out to InstCombineCasts.cpp  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92469  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-01-04 07:54:59 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						80f43d339f 
					 
					
						
						
							
							split 943 lines of instcombine out to a new InstCombineCasts.cpp  
						
						... 
						
						
						
						file.  InstructionCombining.cpp is now down to a svelte 9300 lines :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92468  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2010-01-04 07:53:58 +00:00