Chris Lattner 
							
						 
					 
					
						
						
							
						
						2eb8653157 
					 
					
						
						
							
							prefer to generate constant pool loads over splats.  This prevents us from  
						
						... 
						
						
						
						using a splat for {1.0,1.0,1.0,1.0}
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27055  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-03-24 07:29:17 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						d1f04d40a0 
					 
					
						
						
							
							legalize vbit_convert nodes whose result is a legal type.  
						
						... 
						
						
						
						Legalize intrinsic nodes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27036  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-03-24 02:26:29 +00:00 
						 
				 
			
				
					
						
							
							
								Evan Cheng 
							
						 
					 
					
						
						
							
						
						033e681666 
					 
					
						
						
							
							Lower BUILD_VECTOR to VECTOR_SHUFFLE if there are two distinct nodes (and if  
						
						... 
						
						
						
						the target can handle it). Issue two SCALAR_TO_VECTOR ops followed by a
VECTOR_SHUFFLE to select from the two vectors.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27023  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-03-24 01:17:21 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						7692eb4201 
					 
					
						
						
							
							add support for splitting casts.  This implements  
						
						... 
						
						
						
						CodeGen/Generic/vector.ll:test_cast_2.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26999  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-03-23 21:16:34 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						408c428096 
					 
					
						
						
							
							simplify some code  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26972  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-03-23 05:29:04 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						e25ca692c0 
					 
					
						
						
							
							Implement simple support for vector casting.  This can currently only handle  
						
						... 
						
						
						
						casts between legal vector types.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26961  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-03-22 20:09:35 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						841c882f5d 
					 
					
						
						
							
							Endianness does not affect the order of vector fields.  This fixes  
						
						... 
						
						
						
						SingleSource/UnitTests/Vector/build.c
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26936  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-03-22 01:46:54 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						3b9fa89fca 
					 
					
						
						
							
							Enclose some variables in a scope to avoid error with some gcc versions  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26934  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-03-22 00:12:37 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						e35c218f3e 
					 
					
						
						
							
							add expand support for extractelement  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26931  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-03-21 21:02:03 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						384504cea6 
					 
					
						
						
							
							add some trivial support for extractelement.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26928  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-03-21 20:44:12 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						1c6191ffe7 
					 
					
						
						
							
							Add a hacky workaround for crashes due to vectors live across blocks.  
						
						... 
						
						
						
						Note that this code won't work for vectors that aren't legal on the
target.  Improvements coming.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26925  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-03-21 19:20:37 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						87100e0b83 
					 
					
						
						
							
							If a target supports splatting with SHUFFLE_VECTOR, lower to it from BUILD_VECTOR(x,x,x,x)  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26885  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-03-20 01:52:29 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						4d3abee618 
					 
					
						
						
							
							Allow SCALAR_TO_VECTOR to be custom lowered.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26867  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-03-19 06:47:21 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						ce87215131 
					 
					
						
						
							
							Add SCALAR_TO_VECTOR support  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26866  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-03-19 06:31:19 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						74881908fe 
					 
					
						
						
							
							Don't bother storing undef elements of BUILD_VECTOR's  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26858  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-03-19 05:46:04 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						5fcd0350be 
					 
					
						
						
							
							Implement expand of BUILD_VECTOR containing variable elements.  
						
						... 
						
						
						
						This implements CodeGen/Generic/vector.ll:test_variable_buildvector
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26852  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-03-19 04:18:56 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						2332b9f16f 
					 
					
						
						
							
							implement basic support for INSERT_VECTOR_ELT.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26849  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-03-19 01:17:20 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						b2827b0901 
					 
					
						
						
							
							Rename ConstantVec -> BUILD_VECTOR and VConstant -> VBUILD_VECTOR.  Allow*BUILD_VECTOR to take variable inputs.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26847  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-03-19 00:52:58 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						23d564c11f 
					 
					
						
						
							
							implement vector.ll:test_undef  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26845  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-03-19 00:20:20 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						4794a6b6a0 
					 
					
						
						
							
							Fix the remaining bugs in the vector expansion rework I commited yesterday.  
						
						... 
						
						
						
						This fixes CodeGen/Generic/vector.ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26843  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-03-19 00:07:49 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						c7029805ef 
					 
					
						
						
							
							Change the structure of lowering vector stuff.  Note: This breaks some  
						
						... 
						
						
						
						things.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26840  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-03-18 01:44:44 +00:00 
						 
				 
			
				
					
						
							
							
								Nate Begeman 
							
						 
					 
					
						
						
							
						
						81e8097377 
					 
					
						
						
							
							Remove BRTWOWAY*  
						
						... 
						
						
						
						Make the PPC backend not dependent on BRTWOWAY_CC and make the branch
selector smarter about the code it generates, fixing a case in the
readme.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26814  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-03-17 01:40:33 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						06ac6ab938 
					 
					
						
						
							
							Add a note, this code should be moved to the dag combiner.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26787  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-03-15 22:19:18 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						8f4191d619 
					 
					
						
						
							
							For targets with FABS/FNEG support, lower copysign to an integer load,  
						
						... 
						
						
						
						a select and FABS/FNEG.
This speeds up a trivial (aka stupid) copysign benchmark I wrote from 6.73s
to 2.64s, woo.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26723  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-03-13 06:08:38 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						6b24af87e6 
					 
					
						
						
							
							revert the previous patch, didn't mean to check it in yet  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26610  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-03-08 04:39:05 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						5874f82564 
					 
					
						
						
							
							remove "Slot", it is dead  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26609  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-03-08 04:37:58 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						a09f848c11 
					 
					
						
						
							
							Codegen copysign[f] into a FCOPYSIGN node  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26542  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-03-05 05:09:38 +00:00 
						 
				 
			
				
					
						
							
							
								Evan Cheng 
							
						 
					 
					
						
						
							
						
						3e1ce5a44d 
					 
					
						
						
							
							Add more vector NodeTypes: VSDIV, VUDIV, VAND, VOR, and VXOR.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26504  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-03-03 07:01:07 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						41edaa0529 
					 
					
						
						
							
							remove the read/write port/io intrinsics.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26479  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-03-03 00:19:58 +00:00 
						 
				 
			
				
					
						
							
							
								Evan Cheng 
							
						 
					 
					
						
						
							
						
						860771d2d8 
					 
					
						
						
							
							Vector ops lowering.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26436  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-03-01 01:09:54 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						dca7abed91 
					 
					
						
						
							
							Fix a problem on itanium with memset.  The value to set has been promoted to  
						
						... 
						
						
						
						i64 before this code, so zero_ext doesn't work.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26290  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-02-20 06:38:35 +00:00 
						 
				 
			
				
					
						
							
							
								Nate Begeman 
							
						 
					 
					
						
						
							
						
						551bf3f800 
					 
					
						
						
							
							kill ADD_PARTS & SUB_PARTS and replace them with fancy new ADDC, ADDE, SUBC  
						
						... 
						
						
						
						and SUBE nodes that actually expose what's going on and allow for
significant simplifications in the targets.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26255  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-02-17 05:43:56 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						25125697fb 
					 
					
						
						
							
							Fix another miscompilation exposed by lencode, where we lowered i64->f32  
						
						... 
						
						
						
						conversions to __floatdidf instead of __floatdisf on targets that support
f32 but not i64 (e.g. sparc).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26254  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-02-17 04:32:33 +00:00 
						 
				 
			
				
					
						
							
							
								Jim Laskey 
							
						 
					 
					
						
						
							
						
						d0e58e36a9 
					 
					
						
						
							
							Should not combine ISD::LOCATIONs until we have scheme to remove from  
						
						... 
						
						
						
						MachineDebugInfo tables.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26216  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-02-15 19:34:44 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						4b653a0405 
					 
					
						
						
							
							Fix a latent bug in the call sequence handling stuff.  Some targets (e.g. x86)  
						
						... 
						
						
						
						create these nodes with flag results.  Remember that we legalized them.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26156  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-02-14 00:55:02 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						6831a81599 
					 
					
						
						
							
							Completely rewrite libcall insertion by the legalizer, providing the  
						
						... 
						
						
						
						following handy-dandy properties:
1. it is always correct now
2. it is much faster than before
3. it is easier to understand
This implementation builds off of the recent simplifications of the
legalizer that made it single-pass instead of iterative.
This fixes JM/lencod, JM/ldecod, and
CodeGen/Generic/2006-02-12-InsertLibcall.ll (at least on PPC).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26144  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-02-13 09:18:02 +00:00 
						 
				 
			
				
					
						
							
							
								Nate Begeman 
							
						 
					 
					
						
						
							
						
						da06e9e665 
					 
					
						
						
							
							*** empty log message ***  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25879  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-02-01 19:05:15 +00:00 
						 
				 
			
				
					
						
							
							
								Nate Begeman 
							
						 
					 
					
						
						
							
						
						750ac1bdfa 
					 
					
						
						
							
							Fix some of the stuff in the PPC README file, and clean up legalization  
						
						... 
						
						
						
						of the SELECT_CC, BR_CC, and BRTWOWAY_CC nodes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25875  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-02-01 07:19:44 +00:00 
						 
				 
			
				
					
						
							
							
								Evan Cheng 
							
						 
					 
					
						
						
							
						
						59ad781e01 
					 
					
						
						
							
							Allow custom lowering of fabs. I forgot to check in this change which  
						
						... 
						
						
						
						caused several test failures.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25852  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-01-31 18:14:25 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						19c5c4cca9 
					 
					
						
						
							
							Only insert an AND when converting from BR_COND to BRCC if needed.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25832  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-01-31 05:04:52 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						73e142f2b6 
					 
					
						
						
							
							Fix a bug in my legalizer reworking that caused the X86 backend to not get  
						
						... 
						
						
						
						a chance to custom legalize setcc, which broke a bunch of C++ Codes.
Testcase here: CodeGen/X86/2006-01-30-LongSetcc.ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25821  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-01-30 22:43:50 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						0e753d617b 
					 
					
						
						
							
							don't insert an and node if it isn't needed here, this can prevent folding  
						
						... 
						
						
						
						of lowered target nodes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25804  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-01-30 04:22:28 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						6862dbc446 
					 
					
						
						
							
							Fix RET of promoted values on targets that custom expand RET to a target node.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25794  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-01-29 21:02:23 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						68a17febc7 
					 
					
						
						
							
							cleanups to the ValueTypeActions interface  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25785  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-01-29 08:42:06 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						70814bc384 
					 
					
						
						
							
							Remove some special case hacks for CALLSEQ_*, using UpdateNodeOperands  
						
						... 
						
						
						
						instead.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25780  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-01-29 07:58:15 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						8ca05e0c30 
					 
					
						
						
							
							Allow custom expansion of ConstantVec nodes.  PPC will use this in the future.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25774  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-01-29 06:34:16 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						3181a771ff 
					 
					
						
						
							
							Legalize ConstantFP into TargetConstantFP when the target allows.  Implement  
						
						... 
						
						
						
						custom expansion of ConstantFP nodes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25772  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-01-29 06:26:56 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						03d5e877fd 
					 
					
						
						
							
							eliminate uses of SelectionDAG::getBR2Way_CC  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25767  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-01-29 06:00:45 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						c52ad4f04e 
					 
					
						
						
							
							Use the new "UpdateNodeOperands" method to simplify LegalizeDAG and make it  
						
						... 
						
						
						
						faster.  This cuts about 120 lines of code out of the legalizer (mostly code
checking to see if operands have changed).
It also fixes an ugly performance issue, where the legalizer cloned the entire
graph after any change.  Now the "UpdateNodeOperands" method gives it a chance
to reuse nodes if the operands of a node change but not its opcode or valuetypes.
This speeds up instruction selection time on kimwitu++ by about 8.2% with a
release build.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25746  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-01-28 10:58:55 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						948c1b1cda 
					 
					
						
						
							
							minor tweaks  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25740  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-01-28 08:31:04 +00:00