Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								a0d01ff567 
								
							 
						 
						
							
							
								
								basic instcombine support for CDS.  
							
							 
							
							... 
							
							
							
							llvm-svn: 148806 
							
						 
						
							2012-01-24 14:31:22 +00:00  
						
					 
				
					
						
							
							
								 
								Eli Friedman
							
						 
						
							 
							
							
							
							
								
							
							
								303c81c773 
								
							 
						 
						
							
							
								
								Minor simplification: use ShuffleVectorInst::getMaskValue instead of a more expensive helper.  
							
							 
							
							... 
							
							
							
							llvm-svn: 142672 
							
						 
						
							2011-10-21 19:11:34 +00:00  
						
					 
				
					
						
							
							
								 
								Eli Friedman
							
						 
						
							 
							
							
							
							
								
							
							
								ce818277fc 
								
							 
						 
						
							
							
								
								Extend instcombine's shufflevector simplification to handle more cases where the input and output vectors have different sizes.  Patch by Xiaoyi Guo.  
							
							 
							
							... 
							
							
							
							llvm-svn: 142671 
							
						 
						
							2011-10-21 19:06:29 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								229907cd11 
								
							 
						 
						
							
							
								
								land David Blaikie's patch to de-constify Type, with a few tweaks.  
							
							 
							
							... 
							
							
							
							llvm-svn: 135375 
							
						 
						
							2011-07-18 04:54:35 +00:00  
						
					 
				
					
						
							
							
								 
								Nadav Rotem
							
						 
						
							 
							
							
							
							
								
							
							
								d74b72b8a9 
								
							 
						 
						
							
							
								
								Instcombile optimization: extractelement(cast) -> cast(extractelement)  
							
							 
							
							... 
							
							
							
							llvm-svn: 128683 
							
						 
						
							2011-03-31 22:57:29 +00:00  
						
					 
				
					
						
							
							
								 
								Eli Friedman
							
						 
						
							 
							
							
							
							
								
							
							
								ef200db4fd 
								
							 
						 
						
							
							
								
								PR9218: SimplifyDemandedVectorElts can return a non-null value that is not  
							
							 
							
							... 
							
							
							
							the instruction passed in.  Make sure to account for this correctly, instead
of looping infinitely.
llvm-svn: 126058 
							
						 
						
							2011-02-19 22:42:40 +00:00  
						
					 
				
					
						
							
							
								 
								Jay Foad
							
						 
						
							 
							
							
							
							
								
							
							
								25a5e4ca1f 
								
							 
						 
						
							
							
								
								PR5207: Rename overloaded APInt methods set(), clear(), flip() to  
							
							 
							
							... 
							
							
							
							setAllBits(), setBit(unsigned), etc.
llvm-svn: 120564 
							
						 
						
							2010-12-01 08:53:58 +00:00  
						
					 
				
					
						
							
							
								 
								Bob Wilson
							
						 
						
							 
							
							
							
							
								
							
							
								67a6f32c59 
								
							 
						 
						
							
							
								
								Clean up indentation and other whitespace.  
							
							 
							
							... 
							
							
							
							llvm-svn: 117728 
							
						 
						
							2010-10-29 22:20:45 +00:00  
						
					 
				
					
						
							
							
								 
								Bob Wilson
							
						 
						
							 
							
							
							
							
								
							
							
								8ecf98b04f 
								
							 
						 
						
							
							
								
								Remove trailing whitespace.  
							
							 
							
							... 
							
							
							
							llvm-svn: 117727 
							
						 
						
							2010-10-29 22:20:43 +00:00  
						
					 
				
					
						
							
							
								 
								Bob Wilson
							
						 
						
							 
							
							
							
							
								
							
							
								9d07f39ace 
								
							 
						 
						
							
							
								
								Fix 80-column violation.  
							
							 
							
							... 
							
							
							
							llvm-svn: 117722 
							
						 
						
							2010-10-29 22:03:07 +00:00  
						
					 
				
					
						
							
							
								 
								Bob Wilson
							
						 
						
							 
							
							
							
							
								
							
							
								11ee456e23 
								
							 
						 
						
							
							
								
								Change instcombine's getShuffleMask to represent undef with negative values.  
							
							 
							
							... 
							
							
							
							This code had previously used 2*N, where N is the mask length, to represent
undef.  That is not safe because the shufflevector operands may have more
than N elements -- they don't have to match the result type.
llvm-svn: 117721 
							
						 
						
							2010-10-29 22:03:05 +00:00  
						
					 
				
					
						
							
							
								 
								Bob Wilson
							
						 
						
							 
							
							
							
							
								
							
							
								cb11b48e7a 
								
							 
						 
						
							
							
								
								Make instcombine a little more aggressive in combining vector shuffles.  
							
							 
							
							... 
							
							
							
							Allow splats even if they don't match either of the original shuffles,
possibly due to undef entries in the shuffles masks.  Radar 8597790.
Also fix some 80-column violations.
llvm-svn: 117719 
							
						 
						
							2010-10-29 22:02:50 +00:00  
						
					 
				
					
						
							
							
								 
								Eric Christopher
							
						 
						
							 
							
							
							
							
								
							
							
								51edc7b7e1 
								
							 
						 
						
							
							
								
								Temporarily revert r110987 as it's causing some miscompares in  
							
							 
							
							... 
							
							
							
							vector heavy code.  I'll re-enable when we've tracked down the problem.
llvm-svn: 111318 
							
						 
						
							2010-08-17 22:55:27 +00:00  
						
					 
				
					
						
							
							
								 
								Nate Begeman
							
						 
						
							 
							
							
							
							
								
							
							
								2a0ca3e937 
								
							 
						 
						
							
							
								
								Reapply this transformation now that it is passing the external test which it previously failed.  
							
							 
							
							... 
							
							
							
							llvm-svn: 110987 
							
						 
						
							2010-08-13 00:17:53 +00:00  
						
					 
				
					
						
							
							
								 
								Eric Christopher
							
						 
						
							 
							
							
							
							
								
							
							
								ac40d49c70 
								
							 
						 
						
							
							
								
								Temporarily revert 110737 and 110734, they were causing failures  
							
							 
							
							... 
							
							
							
							in an external testsuite.
llvm-svn: 110905 
							
						 
						
							2010-08-12 07:01:22 +00:00  
						
					 
				
					
						
							
							
								 
								Nate Begeman
							
						 
						
							 
							
							
							
							
								
							
							
								265363061e 
								
							 
						 
						
							
							
								
								Add the minimal amount of smarts necessary to instcombine of shufflevectors to recognize  
							
							 
							
							... 
							
							
							
							patterns generated by clang for transpose of a matrix in generic vectors.  This is made
of two parts:
1) Propagating vector extracts of hi/lo half into their users
2) Recognizing an insertion of even elements followed by the odd elements as an unpack.
Testcase to come, but this shrinks the # of shuffle instructions generated on x86 from ~40 to the minimal 8.
llvm-svn: 110734 
							
						 
						
							2010-08-10 21:38:12 +00:00  
						
					 
				
					
						
							
							
								 
								Duncan Sands
							
						 
						
							 
							
							
							
							
								
							
							
								19d0b47b1f 
								
							 
						 
						
							
							
								
								There are two ways of checking for a given type, for example isa<PointerType>(T)  
							
							 
							
							... 
							
							
							
							and T->isPointerTy().  Convert most instances of the first form to the second form.
Requested by Chris.
llvm-svn: 96344 
							
						 
						
							2010-02-16 11:11:14 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								b22423c89a 
								
							 
						 
						
							
							
								
								fix some problems handling large vectors reported in PR6230  
							
							 
							
							... 
							
							
							
							llvm-svn: 95616 
							
						 
						
							2010-02-08 23:56:03 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								841af4f03d 
								
							 
						 
						
							
							
								
								reduce indentation  
							
							 
							
							... 
							
							
							
							llvm-svn: 92684 
							
						 
						
							2010-01-05 05:42:08 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								ec97a90221 
								
							 
						 
						
							
							
								
								split vector stuff out to InstCombineVectorOps.cpp  
							
							 
							
							... 
							
							
							
							llvm-svn: 92683 
							
						 
						
							2010-01-05 05:36:20 +00:00