Chris Lattner 
							
						 
					 
					
						
						
							
						
						3e8f3ce8f6 
					 
					
						
						
							
							Identify the INTRINSIC node  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27020  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-03-24 01:04:30 +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 
							
						 
					 
					
						
						
							
						
						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 
							
						 
					 
					
						
						
							
						
						fb194b9e73 
					 
					
						
						
							
							Add very basic support for VECTOR_SHUFFLE  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26880  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-03-19 23:56:04 +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 
							
						 
					 
					
						
						
							
						
						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 
							
						 
					 
					
						
						
							
						
						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 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						0c486bdc22 
					 
					
						
						
							
							add a couple enum values  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26830  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-03-17 19:53:59 +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 
							
						 
					 
					
						
						
							
						
						28b5b1c7b5 
					 
					
						
						
							
							add support for vector->vector casts  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26788  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-03-15 22:19:46 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						3c232c83be 
					 
					
						
						
							
							Don't depend on the C99 copysign function, implement it ourselves.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26566  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-03-05 23:57:58 +00:00 
						 
				 
			
				
					
						
							
							
								Jeff Cohen 
							
						 
					 
					
						
						
							
						
						3d68e15c20 
					 
					
						
						
							
							Fix VC++ compilation error.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26554  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-03-05 21:43:37 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						12d830346b 
					 
					
						
						
							
							Add some simple copysign folds  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26543  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-03-05 05:30:57 +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 
							
						 
					 
					
						
						
							
						
						bfa284f697 
					 
					
						
						
							
							SDOperand::isOperand should not be a forwarding. It must check *this against N's operands.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26502  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-03-03 06:42:32 +00:00 
						 
				 
			
				
					
						
							
							
								Evan Cheng 
							
						 
					 
					
						
						
							
						
						80d8eaae05 
					 
					
						
						
							
							Added isOperand(N): true if this is an operand of N  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26501  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-03-03 06:24:54 +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 
							
						 
					 
					
						
						
							
						
						1ab7d859cf 
					 
					
						
						
							
							- Added VConstant as an abstract version of ConstantVec.  
						
						... 
						
						
						
						- All abstrct vector nodes must have # of elements and element type as their
first two operands.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26432  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-03-01 00:51:13 +00:00 
						 
				 
			
				
					
						
							
							
								Evan Cheng 
							
						 
					 
					
						
						
							
						
						38b7327ec0 
					 
					
						
						
							
							Print ConstantPoolSDNode offset field.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26381  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-02-26 08:36:57 +00:00 
						 
				 
			
				
					
						
							
							
								Evan Cheng 
							
						 
					 
					
						
						
							
						
						404cb4f9fa 
					 
					
						
						
							
							Added an offset field to ConstantPoolSDNode.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26371  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-02-25 09:54:52 +00:00 
						 
				 
			
				
					
						
							
							
								Nate Begeman 
							
						 
					 
					
						
						
							
						
						b0d04a7dea 
					 
					
						
						
							
							Add checks to make sure we don't create bogus extend nodes, and fix a bug  
						
						... 
						
						
						
						where we were doing exactly that which was causing failures on x86 and
alpha.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26284  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-02-18 02:40:58 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						012f241987 
					 
					
						
						
							
							Fix a tricky issue in the SimplifyDemandedBits code where CombineTo wasn't  
						
						... 
						
						
						
						exactly the API we wanted to call into.  This fixes the crash on crafty last
night.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26269  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-02-17 21:58:01 +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 
						 
				 
			
				
					
						
							
							
								Evan Cheng 
							
						 
					 
					
						
						
							
						
						fae9f1cb34 
					 
					
						
						
							
							Added SelectionDAG::InsertISelMapEntry(). This is used to workaround the gcc  
						
						... 
						
						
						
						problem where it inline the map insertion call too aggressively. Before this
change it was producing a frame size of 24k for Select_store(), now it's down
to 10k (by calling this method rather than calling the map insertion operator).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26094  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-02-09 22:11:03 +00:00 
						 
				 
			
				
					
						
							
							
								Evan Cheng 
							
						 
					 
					
						
						
							
						
						6ae46c4c87 
					 
					
						
						
							
							More changes to reduce frame size.  
						
						... 
						
						
						
						Move all getTargetNode() out of SelectionDAG.h into SelectionDAG.cpp. This
prevents them from being inlined.
Change getTargetNode() so they return SDNode * instead of SDOperand to prevent
copying. It should also help compilation speed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26083  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-02-09 07:15:23 +00:00 
						 
				 
			
				
					
						
							
							
								Evan Cheng 
							
						 
					 
					
						
						
							
						
						4ee6211258 
					 
					
						
						
							
							* Added SDNode::isOnlyUse().  
						
						... 
						
						
						
						* Fix hasNUsesOfValue(), it should be const.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25990  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-02-05 06:29:23 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						eefae25034 
					 
					
						
						
							
							remove dead fn  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25935  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-02-03 06:51:34 +00:00 
						 
				 
			
				
					
						
							
							
								Evan Cheng 
							
						 
					 
					
						
						
							
						
						9fda2f9106 
					 
					
						
						
							
							Added case HANDLENODE to getOperationName().  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25920  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-02-03 01:33:01 +00:00 
						 
				 
			
				
					
						
							
							
								Evan Cheng 
							
						 
					 
					
						
						
							
						
						b8973bd8f5 
					 
					
						
						
							
							Allow the specification of explicit alignments for constant pool entries.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25855  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-01-31 22:23:14 +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 
							
						 
					 
					
						
						
							
						
						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 
							
						 
					 
					
						
						
							
						
						809ec11088 
					 
					
						
						
							
							add another method variant  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25744  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-01-28 10:09:25 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						df6eb30fa9 
					 
					
						
						
							
							add some methods for updating nodes  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25742  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-01-28 09:32:45 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						0ff5c27a00 
					 
					
						
						
							
							Remove the ISD::CALL and ISD::TAILCALL nodes  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25721  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-01-28 00:18:58 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						ce7518ce92 
					 
					
						
						
							
							initial selectiondag support for new INLINEASM node.  Note that inline asms  
						
						... 
						
						
						
						with outputs or inputs are not supported yet. :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25664  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-01-26 22:24:51 +00:00 
						 
				 
			
				
					
						
							
							
								Nate Begeman 
							
						 
					 
					
						
						
							
						
						acc398c195 
					 
					
						
						
							
							First part of bug 680:  
						
						... 
						
						
						
						Remove TLI.LowerVA* and replace it with SDNodes that are lowered the same
way as everything else.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25606  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-01-25 18:21:52 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						6a5428934b 
					 
					
						
						
							
							Fix an infinite loop I caused by making sure to legalize the flag operand  
						
						... 
						
						
						
						of CALLSEQ_* nodes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25582  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-01-24 05:48:21 +00:00 
						 
				 
			
				
					
						
							
							
								Andrew Lenharth 
							
						 
					 
					
						
						
							
						
						7cf11b4ab2 
					 
					
						
						
							
							another couple selects  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25551  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-01-23 21:51:14 +00:00 
						 
				 
			
				
					
						
							
							
								Andrew Lenharth 
							
						 
					 
					
						
						
							
						
						8c6f1ee5aa 
					 
					
						
						
							
							another selectto  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25548  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-01-23 20:59:12 +00:00 
						 
				 
			
				
					
						
							
							
								Nate Begeman 
							
						 
					 
					
						
						
							
						
						1b5db7aaec 
					 
					
						
						
							
							Constant fold ctpop/ctlz/cttz, and a couple other small cleanups  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25357  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-01-16 08:07:10 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						cc0aad20dd 
					 
					
						
						
							
							add a missing node name  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25327  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-01-15 08:39:35 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						5a67afc118 
					 
					
						
						
							
							add stacksave/stackrestore nodes  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25270  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-01-13 02:39:42 +00:00 
						 
				 
			
				
					
						
							
							
								Evan Cheng 
							
						 
					 
					
						
						
							
						
						140e99babc 
					 
					
						
						
							
							ignore register  #0  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25223  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-01-11 22:13:48 +00:00 
						 
				 
			
				
					
						
							
							
								Nate Begeman 
							
						 
					 
					
						
						
							
						
						35ef913ec2 
					 
					
						
						
							
							Add bswap, rotl, and rotr nodes  
						
						... 
						
						
						
						Add dag combiner code to recognize rotl, rotr
Add ppc code to match rotl
Targets should add rotl/rotr patterns if they have them
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25222  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-01-11 21:21:00 +00:00 
						 
				 
			
				
					
						
							
							
								Evan Cheng 
							
						 
					 
					
						
						
							
						
						909addffc3 
					 
					
						
						
							
							New getNode() variants.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25156  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-01-09 18:29:18 +00:00 
						 
				 
			
				
					
						
							
							
								Jim Laskey 
							
						 
					 
					
						
						
							
						
						abf6d1784b 
					 
					
						
						
							
							Added initial support for DEBUG_LABEL allowing debug specific labels to be  
						
						... 
						
						
						
						inserted in the code.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25104  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2006-01-05 01:25:28 +00:00 
						 
				 
			
				
					
						
							
							
								Nate Begeman 
							
						 
					 
					
						
						
							
						
						512beb9465 
					 
					
						
						
							
							Make sure to pass the offset into the new node, so that we don't silently  
						
						... 
						
						
						
						drop it on the floor.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25044  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-12-30 00:10:38 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						c8547d856d 
					 
					
						
						
							
							Fold bitconv(bitconv(x)) -> x.  We now compile this:  
						
						... 
						
						
						
						void foo(double);
void bar(double X) { foo(X); }
to this:
bar:
        save -96, %o6, %o6
        or %g0, %i0, %o0
        or %g0, %i1, %o1
        call foo
        nop
        restore %g0, %g0, %g0
        retl
        nop
instead of this:
bar:
        save -112, %o6, %o6
        st %i1, [%i6+-4]
        st %i0, [%i6+-8]
        ldd [%i6+-8], %f0
        std %f0, [%i6+-16]
        ld [%i6+-12], %o1
        ld [%i6+-16], %o0
        call foo
        nop
        restore %g0, %g0, %g0
        retl
        nop
on V8.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24981  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-12-23 05:37:50 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						94683777ae 
					 
					
						
						
							
							constant fold bits_convert in getNode and in the dag combiner for fp<->int  
						
						... 
						
						
						
						conversions.  This allows V8 to compiles this:
void %test() {
        call float %test2( float 1.000000e+00, float 2.000000e+00, double 3.000000e+00, double* null )
        ret void
}
into:
test:
        save -96, %o6, %o6
        sethi 0, %o3
        sethi 1049088, %o2
        sethi 1048576, %o1
        sethi 1040384, %o0
        or %g0, %o3, %o4
        call test2
        nop
        restore %g0, %g0, %g0
        retl
        nop
instead of:
test:
        save -112, %o6, %o6
        sethi 0, %o4
        sethi 1049088, %l0
        st %o4, [%i6+-12]
        st %l0, [%i6+-16]
        ld [%i6+-12], %o3
        ld [%i6+-16], %o2
        sethi 1048576, %o1
        sethi 1040384, %o0
        call test2
        nop
        restore %g0, %g0, %g0
        retl
        nop
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24980  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-12-23 05:30:37 +00:00