Jeff Cohen 
							
						 
					 
					
						
						
							
						
						7383ce4127 
					 
					
						
						
							
							Fix VC++ precedence warnings  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23169  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-31 02:47:06 +00:00 
						 
				 
			
				
					
						
							
							
								Nate Begeman 
							
						 
					 
					
						
						
							
						
						fe75a2836a 
					 
					
						
						
							
							Sigh, not my day.  Fix typo.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23166  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-31 00:43:49 +00:00 
						 
				 
			
				
					
						
							
							
								Nate Begeman 
							
						 
					 
					
						
						
							
						
						9f52f2838d 
					 
					
						
						
							
							Fix a mistake in my previous patch pointed out by sabre; the AssertZext  
						
						... 
						
						
						
						case in MaskedValueIsZero was wrong.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23165  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-31 00:43:08 +00:00 
						 
				 
			
				
					
						
							
							
								Nate Begeman 
							
						 
					 
					
						
						
							
						
						b85dfab889 
					 
					
						
						
							
							Remove some unnecessary casts, and add the AssertZext case to  
						
						... 
						
						
						
						MaskedValueIsZero.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23164  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-31 00:27:53 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						0fdd768094 
					 
					
						
						
							
							Allow physregs to occur in the dag with multiple types.  Though I don't likethis, it is a requirement on PPC, which can have an f32 value in r3 at onepoint in a function and a f64 value in r3 at another point.  :(  
						
						... 
						
						
						
						This fixes compilation of mesa
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23161  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-30 22:38:38 +00:00 
						 
				 
			
				
					
						
							
							
								Nate Begeman 
							
						 
					 
					
						
						
							
						
						5ffcd9b56c 
					 
					
						
						
							
							Remove a bogus piece of my AssertSext/AssertZext patch.  oops.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23148  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-30 02:54:28 +00:00 
						 
				 
			
				
					
						
							
							
								Nate Begeman 
							
						 
					 
					
						
						
							
						
						56eb86806d 
					 
					
						
						
							
							Add support for AssertSext and AssertZext, folding other extensions with  
						
						... 
						
						
						
						them.  This allows for elminination of redundant extends in the entry
blocks of functions on PowerPC.
Add support for i32 x i32 -> i64 multiplies, by recognizing when the inputs
to ISD::MUL in ExpandOp are actually just extended i32 values and not real
i64 values.  this allows us to codegen
int mulhs(int a, int b) { return ((long long)a * b) >> 32; }
as:
_mulhs:
        mulhw r3, r4, r3
        blr
instead of:
_mulhs:
        mulhwu r2, r4, r3
        srawi r5, r3, 31
        mullw r5, r4, r5
        add r2, r2, r5
        srawi r4, r4, 31
        mullw r3, r4, r3
        add r3, r2, r3
        blr
with a similar improvement on x86.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23147  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-30 02:44:00 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						c26aefa15a 
					 
					
						
						
							
							Add a new API for Nate  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23131  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-29 21:59:31 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						ff01698ec0 
					 
					
						
						
							
							Fix a bug in ReplaceAllUsesWith  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23122  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-28 23:59:36 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						579cfabdad 
					 
					
						
						
							
							Checking types here is not safe, because multiple types can map to the same  
						
						... 
						
						
						
						register class.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23103  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-26 21:39:15 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						8b52f21f10 
					 
					
						
						
							
							Revampt ReplaceAllUsesWith to be more efficient and easier to use.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23087  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-26 18:36:28 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						5839bf2b3b 
					 
					
						
						
							
							Change ConstantPoolSDNode to actually hold the Constant itself instead of  
						
						... 
						
						
						
						putting it into the constant pool.  This allows the isel machinery to
create constants that it will end up deciding are not needed, without them
ending up in the resultant function constant pool.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23081  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-26 17:15:30 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						2bb06cdf27 
					 
					
						
						
							
							Fix a huge annoyance: SelectNodeTo took types before the opcode unlike  
						
						... 
						
						
						
						every other SD API.  Fix it to take the opcode before the types.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23079  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-26 16:36:26 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						f07d023dd9 
					 
					
						
						
							
							Fix a nasty bug from a previous patch of mine  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23069  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-26 00:13:12 +00:00 
						 
				 
			
				
					
						
							
							
								Nate Begeman 
							
						 
					 
					
						
						
							
						
						1999b4b974 
					 
					
						
						
							
							New fold for SELECT_CC  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23058  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-25 20:04:38 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						43247a157b 
					 
					
						
						
							
							Don't auto-cse nodes that return flags  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23055  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-25 19:12:10 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						9d338cf3a3 
					 
					
						
						
							
							simplify the code a bit using isOperationLegal  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23053  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-25 17:54:58 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						4025a9c2cc 
					 
					
						
						
							
							ADd support for TargetConstantPool nodes  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23041  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-25 05:03:06 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						afb2dd43de 
					 
					
						
						
							
							add a new TargetFrameIndex node  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23035  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-25 00:43:01 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						7651fa4a7e 
					 
					
						
						
							
							add a method  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23027  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-24 23:00:29 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						7b2880c4cd 
					 
					
						
						
							
							Add ReplaceAllUsesWith that can take a vector of replacement values.  
						
						... 
						
						
						
						Add some foldings to hopefully help the illegal setcc issue, and move some code around.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23025  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-24 22:44:39 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						1d6373c1af 
					 
					
						
						
							
							teach selection dag mask tracking about the fact that select_cc operates like  
						
						... 
						
						
						
						select.  Also teach it that the bit count instructions can only set the low bits
of the result, depending on the size of the input.
This allows us to compile this:
int %eq0(int %a) {
        %tmp.1 = seteq int %a, 0                ; <bool> [#uses=1]
        %tmp.2 = cast bool %tmp.1 to int                ; <int> [#uses=1]
        ret int %tmp.2
}
To this:
_eq0:
        cntlzw r2, r3
        srwi r3, r2, 5
        blr
instead of this:
_eq0:
        cntlzw r2, r3
        rlwinm r3, r2, 27, 31, 31
        blr
when setcc is marked illegal on ppc (which restores parity to non-illegal
setcc).  Thanks to Nate for pointing this out.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23013  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-24 16:46:55 +00:00 
						 
				 
			
				
					
						
							
							
								Nate Begeman 
							
						 
					 
					
						
						
							
						
						cebd433d8d 
					 
					
						
						
							
							Teach SelectionDAG how to simplify a few more setcc-equivalent select_cc  
						
						... 
						
						
						
						nodes so that backends don't have to.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22999  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-24 04:57:57 +00:00 
						 
				 
			
				
					
						
							
							
								Nate Begeman 
							
						 
					 
					
						
						
							
						
						0750a40a4f 
					 
					
						
						
							
							Fix optimization of select_cc seteq X, 0, 1, 0 -> srl (ctlz X), log2 X size  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22995  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-24 00:21:28 +00:00 
						 
				 
			
				
					
						
							
							
								Nate Begeman 
							
						 
					 
					
						
						
							
						
						7042f15bde 
					 
					
						
						
							
							Teach the SelectionDAG how to transform select_cc eq, X, 0, 1, 0 into  
						
						... 
						
						
						
						either seteq X, 0 or srl (ctlz X), size(X-1), depending on what's legal
for the target.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22978  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-23 05:41:12 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						c975e1dedc 
					 
					
						
						
							
							add anew method  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22957  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-21 22:30:30 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						99baddaf57 
					 
					
						
						
							
							add a method  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22955  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-21 19:48:59 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						6b09a29604 
					 
					
						
						
							
							add a method  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22949  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-21 18:49:33 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						aaaa0b67dd 
					 
					
						
						
							
							Add support for TargetGlobalAddress nodes  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22938  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-19 22:31:04 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						fa164b61d1 
					 
					
						
						
							
							Fix a bug in previous commit  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22936  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-19 21:34:13 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						7228aa7868 
					 
					
						
						
							
							Print physreg register nodes with target names (e.g. F1) instead of numbers  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22934  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-19 21:21:16 +00:00 
						 
				 
			
				
					
						
							
							
								Jeff Cohen 
							
						 
					 
					
						
						
							
						
						a92b7c36e9 
					 
					
						
						
							
							Fix VC++ precedence warning.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22902  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-19 04:39:48 +00:00 
						 
				 
			
				
					
						
							
							
								Nate Begeman 
							
						 
					 
					
						
						
							
						
						294a0a103d 
					 
					
						
						
							
							Add support for target DAG nodes that take 4 operands, such as PowerPC's  
						
						... 
						
						
						
						rlwinm.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22856  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-18 07:30:15 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						a23e8154dc 
					 
					
						
						
							
							Fix printing of VTSDNodes  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22853  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-18 03:31:02 +00:00 
						 
				 
			
				
					
						
							
							
								Jim Laskey 
							
						 
					 
					
						
						
							
						
						58b968be85 
					 
					
						
						
							
							Move the code dependency for MathExtras.h from SelectionDAGNodes.h.  
						
						... 
						
						
						
						Added some class dividers in SelectionDAG.cpp.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22841  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-17 20:08:02 +00:00 
						 
				 
			
				
					
						
							
							
								Jim Laskey 
							
						 
					 
					
						
						
							
						
						cb6682fa44 
					 
					
						
						
							
							Culling out use of unions for converting FP to bits and vice versa.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22838  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-17 19:34:49 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						8b8749f367 
					 
					
						
						
							
							Fix a bug in RemoveDeadNodes where it would crash when its "optional"  
						
						... 
						
						
						
						argument is not specified.
Implement ReplaceAllUsesWith.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22834  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-17 19:00:20 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						37bfbb47de 
					 
					
						
						
							
							add a new TargetConstant node  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22813  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-17 00:34:06 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						d5d0f9bd20 
					 
					
						
						
							
							Eliminate the RegSDNode class, which 3 nodes (CopyFromReg/CopyToReg/ImplicitDef)  
						
						... 
						
						
						
						used to tack a register number onto the node.
Instead of doing this, make a new node, RegisterSDNode, which is a leaf
containing a register number.  These three operations just become normal
DAG nodes now, instead of requiring special handling.
Note that with this change, it is no longer correct to make illegal
CopyFromReg/CopyToReg nodes.  The legalizer will not touch them, and this
is bad, so don't do it. :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22806  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-16 21:55:35 +00:00 
						 
				 
			
				
					
						
							
							
								Nate Begeman 
							
						 
					 
					
						
						
							
						
						7cbd525ba8 
					 
					
						
						
							
							Implement BR_CC and BRTWOWAY_CC.  This allows the removal of a rather nasty  
						
						... 
						
						
						
						fixme from the PowerPC backend.  Emit slightly better code for legalizing
select_cc.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22805  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-16 19:49:35 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						f3e133a35f 
					 
					
						
						
							
							Allow passing a dag into dump and getOperationName.  If one is available  
						
						... 
						
						
						
						when printing a node, use it to render target operations with their
target instruction name instead of "<<unknown>>".
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22804  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-16 18:33:07 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						149c58ce0b 
					 
					
						
						
							
							Add some methods for dag->dag isel.  
						
						... 
						
						
						
						Split RemoveNodeFromCSEMaps out of DeleteNodesIfDead to do it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22801  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-16 18:17:10 +00:00 
						 
				 
			
				
					
						
							
							
								Nate Begeman 
							
						 
					 
					
						
						
							
						
						ff66368a5f 
					 
					
						
						
							
							Remove an unncessary argument to SimplifySelectCC and add an additional  
						
						... 
						
						
						
						assert when creating a select_cc node.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22780  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-13 06:14:17 +00:00 
						 
				 
			
				
					
						
							
							
								Nate Begeman 
							
						 
					 
					
						
						
							
						
						32c392a3a5 
					 
					
						
						
							
							Fix the fabs regression on x86 by abstracting the select_cc optimization  
						
						... 
						
						
						
						out into SimplifySelectCC.  This allows both ISD::SELECT and ISD::SELECT_CC
to use the same set of simplifying folds.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22779  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-13 06:00:21 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						3e27b1f5c4 
					 
					
						
						
							
							implement a couple of simple shift foldings.  
						
						... 
						
						
						
						e.g.  (X & 7) >> 3   -> 0
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22774  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-12 23:54:58 +00:00 
						 
				 
			
				
					
						
							
							
								Nate Begeman 
							
						 
					 
					
						
						
							
						
						e1fae4a3ae 
					 
					
						
						
							
							Add a select_cc optimization for recognizing abs(int).  This speeds up an  
						
						... 
						
						
						
						integer MPEG encoding loop by a factor of two.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22758  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-11 02:18:13 +00:00 
						 
				 
			
				
					
						
							
							
								Nate Begeman 
							
						 
					 
					
						
						
							
						
						e5d63829fd 
					 
					
						
						
							
							Some SELECT_CC cleanups:  
						
						... 
						
						
						
						1. move assertions for node creation to getNode()
2. legalize the values returned in ExpandOp immediately
3. Move select_cc optimizations from SELECT's getNode() to SELECT_CC's,
   allowing them to be cleaned up significantly.
This paves the way to pick up additional optimizations on SELECT_CC, such
as sum-of-absolute-differences.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22757  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-11 01:12:20 +00:00 
						 
				 
			
				
					
						
							
							
								Nate Begeman 
							
						 
					 
					
						
						
							
						
						9373a81e53 
					 
					
						
						
							
							Add new node, SELECT_CC.  This node is for targets that don't natively  
						
						... 
						
						
						
						implement SELECT.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22755  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-10 20:51:12 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						7c6e452d44 
					 
					
						
						
							
							Fix an oversight that may be causing PR617.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22753  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-10 17:37:53 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						bd8625b062 
					 
					
						
						
							
							Fix spelling, fix some broken canonicalizations by my last patch  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22734  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-09 23:09:05 +00:00