Dan Gohman 
							
						 
					 
					
						
						
							
						
						3a09d891a4 
					 
					
						
						
							
							Optimize ScheduleDAG's ComputeDepths and ComputeHeights to not need  
						
						 
						
						... 
						
						
						
						a scratch std::vector.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55420  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-08-27 16:27:25 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						a8b8332e81 
					 
					
						
						
							
							Remove the std::ostream form of PseudoSourceValue's print,  
						
						 
						
						... 
						
						
						
						which isn't needed anymore.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55419  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-08-27 16:19:44 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						10df0fa73e 
					 
					
						
						
							
							Basic FastISel support for floating-point constants.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55401  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-08-27 01:09:54 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						96c5ea878c 
					 
					
						
						
							
							Fix handling of inttoptr and ptrtoint when unhandled operands are present.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55400  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-08-27 00:35:37 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						9d5b416240 
					 
					
						
						
							
							Add support for fast isel of inttoptr and ptrtoint in the cases where truncation is not needed.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55399  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-08-27 00:31:01 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						d0533c9998 
					 
					
						
						
							
							Factor out a large amoutn of the cast handling code in fast isel into helper methods.  
						
						 
						
						... 
						
						
						
						This simultaneously makes the code simpler and adds support for sext as well.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55398  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-08-26 23:46:32 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						97e2568f46 
					 
					
						
						
							
							Add support for fast isel of zext.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55396  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-08-26 23:14:49 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Gabor Greif 
							
						 
					 
					
						
						
							
						
						99a6cb92d1 
					 
					
						
						
							
							disallow direct access to SDValue::ResNo, provide a getter instead  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55394  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-08-26 22:36:50 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						13269335a5 
					 
					
						
						
							
							Add support for fptosi of constants in fast isel.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55393  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-08-26 22:34:28 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						3200d92947 
					 
					
						
						
							
							Optimize SelectionDAG's topological sort to use one pass instead  
						
						 
						
						... 
						
						
						
						of two, and to not need a scratch std::vector. Also, use the
SelectionDAG's topological sort in LegalizeDAG instead of having
a separate implementation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55389  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-08-26 21:42:18 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						763d89343b 
					 
					
						
						
							
							Refactor the bitcast code into its own function.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55387  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-08-26 21:28:54 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						80bc6e2243 
					 
					
						
						
							
							Make FastISel use the correct argument type when casting GEP indices.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55384  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-08-26 20:57:08 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						b71fea248f 
					 
					
						
						
							
							Don't select binary instructions with illegal types.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55383  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-08-26 20:52:40 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						a843b8d391 
					 
					
						
						
							
							Add support for fast isel of sitofp, and remove some unnecessary and imprecise legality checks.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55381  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-08-26 20:37:00 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						77a218765a 
					 
					
						
						
							
							Use a combination of copyRegToReg and ISD::BIT_CONVERT when doing fast isel of bitcasts,  
						
						 
						
						... 
						
						
						
						allowing it to support the full range of conversions people might ask for in a correct manner.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55378  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-08-26 18:51:24 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						940f83e772 
					 
					
						
						
							
							Make TargetInstrInfo::copyRegToReg return a bool indicating whether the copy requested  
						
						 
						
						... 
						
						
						
						was inserted or not.  This allows bitcast in fast isel to properly handle the case
where an appropriate reg-to-reg copy is not available.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55375  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-08-26 18:03:31 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						46aa2f5aab 
					 
					
						
						
							
							Add support for fast isel of non-constant fptosi instructions.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55373  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-08-26 17:44:42 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						09c5d8baa2 
					 
					
						
						
							
							typo fix.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55355  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-08-26 06:07:47 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						1146728bfa 
					 
					
						
						
							
							Actually recycle SDNode allocations. SelectionDAG is using  
						
						 
						
						... 
						
						
						
						RecyclingAllocator, but this change is needed for the nodes
to actually be recycled. This cuts SelectionDAG's memory
usage high-water-mark in half in some cases.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55351  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-08-26 01:44:34 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						0f84e4e310 
					 
					
						
						
							
							Add a RetVT parameter to emitted FastISel methods, so that we will be able to pass the desired return  
						
						 
						
						... 
						
						
						
						type down.  This is not currently used.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55345  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-08-25 23:58:18 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Evan Cheng 
							
						 
					 
					
						
						
							
						
						b41aec5476 
					 
					
						
						
							
							Unbreak build.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55342  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-08-25 22:20:39 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						d894f1d274 
					 
					
						
						
							
							Expand bitcast support in fast isel to support bitcasts of non-constant values by emitting reg-reg copies.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55340  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-08-25 21:32:34 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						6d0c25ec3a 
					 
					
						
						
							
							Add support for fast isel of (integer) immediate materialization pattens, and use them to support  
						
						 
						
						... 
						
						
						
						bitcast of constants in fast isel.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55325  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-08-25 20:20:32 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						edfb72c628 
					 
					
						
						
							
							simplify PseudoSourceValue printing a bit.  Unnest all of PseudoSourceValue.cpp from the llvm namespace.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55293  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-08-24 20:37:32 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Evan Cheng 
							
						 
					 
					
						
						
							
						
						40ab164d3a 
					 
					
						
						
							
							Print PseudoSourceValue.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55291  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-08-24 18:51:20 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						c56711c212 
					 
					
						
						
							
							make sure to flush the stream after dumping, to make sure it goes out immediately.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55288  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-08-24 18:28:30 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						62ca32540f 
					 
					
						
						
							
							get MachineConstantPool off std::ostream, onto raw_ostream.  It would be  
						
						 
						
						... 
						
						
						
						really nice if someone converted MachineFunction::print to raw_ostream.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55268  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-08-23 22:53:13 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						944fac71e0 
					 
					
						
						
							
							Switch the asmprinter (.ll) and all the stuff it requires over to  
						
						 
						
						... 
						
						
						
						use raw_ostream instead of std::ostream.  Among other goodness,
this speeds up llvm-dis of kc++ with a release build from 0.85s
to 0.49s (88% faster).
Other interesting changes:
 1) This makes Value::print be non-virtual.
 2) AP[S]Int and ConstantRange can no longer print to ostream directly, 
    use raw_ostream instead.
 3) This fixes a bug in raw_os_ostream where it didn't flush itself 
    when destroyed.
 4) This adds a new SDNode::print method, instead of only allowing "dump".
A lot of APIs have both std::ostream and raw_ostream versions, it would
be useful to go through and systematically anihilate the std::ostream 
versions.
This passes dejagnu, but there may be minor fallout, plz let me know if
so and I'll fix it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55263  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-08-23 22:23:09 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						6ecf50908c 
					 
					
						
						
							
							Make MBBMap a DenseMap instead of a std::map.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55220  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-08-23 02:44:46 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						f350b277f3 
					 
					
						
						
							
							Move the point at which FastISel taps into the SelectionDAGISel  
						
						 
						
						... 
						
						
						
						process up to a higher level. This allows FastISel to leverage
more of SelectionDAGISel's infastructure, such as updating Machine
PHI nodes.
Also, implement transitioning from SDISel back to FastISel in
the middle of a block, so it's now possible to go back and
forth. This allows FastISel to hand individual CallInsts and other
complicated things off to SDISel to handle, while handling the rest
of the block itself.
To help support this, reorganize the SelectionDAG class so that it
is allocated once and reused throughout a function, instead of
being completely reallocated for each block.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55219  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-08-23 02:25:05 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						6679906d97 
					 
					
						
						
							
							Avoid creating shift-by-zero SDNodes in the common case of  
						
						 
						
						... 
						
						
						
						i8* getelementptr. DAGCombine eliminates these, but this is
a fairly common case.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55214  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-08-23 01:06:51 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						6f17966a80 
					 
					
						
						
							
							Move SelectionDAG's constructor out of line.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55212  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-08-23 00:50:30 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						3c8f36fd03 
					 
					
						
						
							
							Reapply r55191 and r55192.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55205  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-08-22 21:28:19 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						449416deb6 
					 
					
						
						
							
							Reverting r55190, r55191, and r55192. They broke the build with this error message:  
						
						 
						
						... 
						
						
						
						{standard input}:17:bad register name `%sil'
make[4]: *** [libgcc/./_addvsi3.o] Error 1
make[4]: *** Waiting for unfinished jobs....
{standard input}:23:bad register name `%dil'
{standard input}:28:bad register name `%dil'
make[4]: *** [libgcc/./_addvdi3.o] Error 1
{standard input}:18:bad register name `%sil'
make[4]: *** [libgcc/./_subvsi3.o] Error 1
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55200  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-08-22 20:51:05 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						5ed3cbb753 
					 
					
						
						
							
							Fix the InsertBranch call.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55192  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-08-22 19:26:10 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						e0182ec0e4 
					 
					
						
						
							
							Support non-fallthrough unconditional branches in FastISel.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55191  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-08-22 19:21:41 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						3b7753be2e 
					 
					
						
						
							
							Add FastISel support for PHINodes. Machine PHI nodes  
						
						 
						
						... 
						
						
						
						are not yet updated properly, but that's a separate
task.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55187  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-08-22 17:37:48 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						1501cdbf63 
					 
					
						
						
							
							Fix SmallVector's size calculation so that a size of 0 is  
						
						 
						
						... 
						
						
						
						handled correctly, and change a few SmallVector uses to use
size 0 to more clearly reflect their intent.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55181  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-08-22 16:07:55 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						2dba6a1bdb 
					 
					
						
						
							
							consolidate DenseMapInfo implementations, and add one for std::pair.  
						
						 
						
						... 
						
						
						
						Patch contributed by m-s.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55167  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-08-22 05:08:25 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						22bb31103d 
					 
					
						
						
							
							Factor out the predicate check code from DAGISelEmitter.cpp  
						
						 
						
						... 
						
						
						
						and use it in FastISelEmitter.cpp, and make FastISel
subtarget aware. Among other things, this lets it work
properly on x86 targets that don't have SSE, where it
successfully selects x87 instructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55156  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-08-22 00:20:26 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						a6211d9e83 
					 
					
						
						
							
							Remove tabs.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55154  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-08-22 00:04:26 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						c8d3a62092 
					 
					
						
						
							
							Remove unneeded #include.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55134  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-08-21 19:51:25 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						2bb1e3eede 
					 
					
						
						
							
							Add libcalls for the new rounding opcodes.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55133  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-08-21 18:38:14 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						509e84fa71 
					 
					
						
						
							
							Add libm-oriented ISD opcodes for rounding operations.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55130  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-08-21 17:55:02 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						f93cf79505 
					 
					
						
						
							
							Have FastISel skip the multiply by 1 for getelementptr on i8*.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55129  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-08-21 17:37:05 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						7a0e6593d0 
					 
					
						
						
							
							MVT::getMVT uses iPTR for pointer types, while we need the actual  
						
						 
						
						... 
						
						
						
						intptr_t type in this case. FastISel can now select simple
getelementptr instructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55125  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-08-21 17:25:26 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						ca84121596 
					 
					
						
						
							
							Elements in DeadNodeSet are checked for use_empty() before they  
						
						 
						
						... 
						
						
						
						are actually deleted, so it's not necessary to remove re-used
nodes from the set.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55123  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-08-21 16:24:54 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						d5fe57d2f9 
					 
					
						
						
							
							Basic fast-isel support for instructions with constant int operands.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55099  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-08-21 01:41:07 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Evan Cheng 
							
						 
					 
					
						
						
							
						
						2076aa800e 
					 
					
						
						
							
							Type of first GEP operand is always the same as the target pointer type.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55097  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-08-21 01:19:11 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						cb37188323 
					 
					
						
						
							
							Use raw_ostream throughout the AsmPrinter.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55092  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2008-08-21 00:14:44 +00:00