Evan Cheng 
							
						 
					 
					
						
						
							
						
						41d88d2ac0 
					 
					
						
						
							
							Revert 66358 for now. It's breaking povray, 450.soplex, and 456.hmmer on x86 / Darwin.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@66574  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-03-10 20:47:18 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						66b8bc3289 
					 
					
						
						
							
							Fix PR3763 by using proper APInt methods instead of uint64_t's.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@66434  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-03-09 20:22:18 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						476769498e 
					 
					
						
						
							
							implement an optimization to codegen c ? 1.0 : 2.0 as load { 2.0, 1.0 } + c*4.  
						
						... 
						
						
						
						For 2009-03-07-FPConstSelect.ll we now produce:
_f:
	xorl	%eax, %eax
	testl	%edi, %edi
	movl	$4, %ecx
	cmovne	%rax, %rcx
	leaq	LCPI1_0(%rip), %rax
	movss	(%rcx,%rax), %xmm0
	ret
previously we produced:
_f:
	subl	$4, %esp
	cmpl	$0, 8(%esp)
	movss	LCPI1_0, %xmm0
	je	LBB1_2	## entry
LBB1_1:	## entry
	movss	LCPI1_1, %xmm0
LBB1_2:	## entry
	movss	%xmm0, (%esp)
	flds	(%esp)
	addl	$4, %esp
	ret
on PPC the code also improves to:
_f:
	cntlzw r2, r3
	srwi r2, r2, 5
	li r3, lo16(LCPI1_0)
	slwi r2, r2, 2
	addis r3, r3, ha16(LCPI1_0)
	lfsx f1, r3, r2
	blr 
from:
_f:
	li r2, lo16(LCPI1_1)
	cmplwi cr0, r3, 0
	addis r2, r2, ha16(LCPI1_1)
	beq cr0, LBB1_2	; entry
LBB1_1:	; entry
	li r2, lo16(LCPI1_0)
	addis r2, r2, ha16(LCPI1_0)
LBB1_2:	; entry
	lfs f1, 0(r2)
	blr 
This also improves the existing pic-cpool case from:
foo:
	subl	$12, %esp
	call	.Lllvm$1.$piclabel
.Lllvm$1.$piclabel:
	popl	%eax
	addl	$_GLOBAL_OFFSET_TABLE_ + [.-.Lllvm$1.$piclabel], %eax
	cmpl	$0, 16(%esp)
	movsd	.LCPI1_0@GOTOFF(%eax), %xmm0
	je	.LBB1_2	# entry
.LBB1_1:	# entry
	movsd	.LCPI1_1@GOTOFF(%eax), %xmm0
.LBB1_2:	# entry
	movsd	%xmm0, (%esp)
	fldl	(%esp)
	addl	$12, %esp
	ret
to:
foo:
	call	.Lllvm$1.$piclabel
.Lllvm$1.$piclabel:
	popl	%eax
	addl	$_GLOBAL_OFFSET_TABLE_ + [.-.Lllvm$1.$piclabel], %eax
	xorl	%ecx, %ecx
	cmpl	$0, 4(%esp)
	movl	$8, %edx
	cmovne	%ecx, %edx
	fldl	.LCPI1_0@GOTOFF(%eax,%edx)
	ret
This triggers a few dozen times in spec FP 2000.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@66358  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-03-08 01:51:30 +00:00 
						 
				 
			
				
					
						
							
							
								Nate Begeman 
							
						 
					 
					
						
						
							
						
						cbd88adea6 
					 
					
						
						
							
							Fix a problem with DAGCombine on 64b targets where folding  
						
						... 
						
						
						
						extracts + build_vector into a shuffle would fail, because the
type of the new build_vector would not be legal.  Try harder to
create a legal build_vector type.  Note: this will be totally 
irrelevant once vector_shuffle no longer takes a build_vector for
shuffle mask.
New:
_foo:
	xorps	%xmm0, %xmm0
	xorps	%xmm1, %xmm1
	subps	%xmm1, %xmm1
	mulps	%xmm0, %xmm1
	addps	%xmm0, %xmm1
	movaps	%xmm1, 0
Old:
_foo:
	xorps	%xmm0, %xmm0
	movss	%xmm0, %xmm1
	xorps	%xmm2, %xmm2
	unpcklps	%xmm1, %xmm2
	pshufd	$80, %xmm1, %xmm1
	unpcklps	%xmm1, %xmm2
	pslldq	$16, %xmm2
	pshufd	$57, %xmm2, %xmm1
	subps	%xmm0, %xmm1
	mulps	%xmm0, %xmm1
	addps	%xmm0, %xmm1
	movaps	%xmm1, 0
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@65791  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-03-01 23:44:07 +00:00 
						 
				 
			
				
					
						
							
							
								Evan Cheng 
							
						 
					 
					
						
						
							
						
						a87008d90b 
					 
					
						
						
							
							Revert BuildVectorSDNode related patches: 65426, 65427, and 65296.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@65482  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-02-25 22:49:59 +00:00 
						 
				 
			
				
					
						
							
							
								Scott Michel 
							
						 
					 
					
						
						
							
						
						4214a5531c 
					 
					
						
						
							
							Introduce the BuildVectorSDNode class that encapsulates the ISD::BUILD_VECTOR  
						
						... 
						
						
						
						instruction. The class also consolidates the code for detecting constant
splats that's shared across PowerPC and the CellSPU backends (and might be
useful for other backends.) Also introduces SelectionDAG::getBUID_VECTOR() for
generating new BUILD_VECTOR nodes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@65296  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-02-22 23:36:09 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						1ba519b726 
					 
					
						
						
							
							Fix a bug that David Greene found in the DAGCombiner's logic  
						
						... 
						
						
						
						that checks whether it's safe to transform a store of a bitcast
value into a store of the original value.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@65201  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-02-20 23:29:13 +00:00 
						 
				 
			
				
					
						
							
							
								Scott Michel 
							
						 
					 
					
						
						
							
						
						fdc40a0a69 
					 
					
						
						
							
							Remove trailing whitespace to reduce later commit patch noise.  
						
						... 
						
						
						
						(Note: Eventually, commits like this will be handled via a pre-commit hook that
 does this automagically, as well as expand tabs to spaces and look for 80-col
 violations.)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@64827  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-02-17 22:15:04 +00:00 
						 
				 
			
				
					
						
							
							
								Dale Johannesen 
							
						 
					 
					
						
						
							
						
						e8d7230f48 
					 
					
						
						
							
							Remove more non-DebugLoc getNode variants.  Use  
						
						... 
						
						
						
						getCALLSEQ_{END,START} to permit passing no DebugLoc
there.  UNDEF doesn't logically have DebugLoc; add
getUNDEF to encapsulate this.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63978  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-02-06 23:05:02 +00:00 
						 
				 
			
				
					
						
							
							
								Dale Johannesen 
							
						 
					 
					
						
						
							
						
						de06470330 
					 
					
						
						
							
							Remove more non-DebugLoc versions of getNode.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63969  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-02-06 21:50:26 +00:00 
						 
				 
			
				
					
						
							
							
								Dale Johannesen 
							
						 
					 
					
						
						
							
						
						ff97d4fe81 
					 
					
						
						
							
							Propagation in TargetLowering.  Includes passing a DL  
						
						... 
						
						
						
						into SimplifySetCC which gets called elsewhere.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63583  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-02-03 00:47:48 +00:00 
						 
				 
			
				
					
						
							
							
								Duncan Sands 
							
						 
					 
					
						
						
							
						
						b0d5cdd52e 
					 
					
						
						
							
							Fix PR3453 and probably a bunch of other potential  
						
						... 
						
						
						
						crashes or wrong code with codegen of large integers:
eliminate the legacy getIntegerVTBitMask and
getIntegerVTSignBit methods, which returned their
value as a uint64_t, so couldn't handle huge types.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63494  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-02-01 18:06:53 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						fc4b677cd5 
					 
					
						
						
							
							Forgot some more DebugLoc propagations.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63493  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-02-01 11:19:36 +00:00 
						 
				 
			
				
					
						
							
							
								Duncan Sands 
							
						 
					 
					
						
						
							
						
						92abc62399 
					 
					
						
						
							
							Fix PR3401: when using large integers, the type  
						
						... 
						
						
						
						returned by getShiftAmountTy may be too small
to hold shift values (it is an i8 on x86-32).
Before and during type legalization, use a large
but legal type for shift amounts: getPointerTy;
afterwards use getShiftAmountTy, fixing up any
shift amounts with a big type during operation
legalization.  Thanks to Dan for writing the
original patch (which I shamelessly pillaged).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63482  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-01-31 15:50:11 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						9729c5ad34 
					 
					
						
						
							
							Don't use DebugLoc::getUnknownLoc(). Default to something hopefully sensible.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63473  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-01-31 03:12:48 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						836ca7dc6e 
					 
					
						
						
							
							More DebugLoc propagation.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63454  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-01-30 23:59:18 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						c144a57e14 
					 
					
						
						
							
							More DebugLoc propagation.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63452  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-01-30 23:36:47 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						c0debad716 
					 
					
						
						
							
							More DebugLoc propagation in LOAD etc. methods.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63451  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-01-30 23:27:35 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						0225a1dcb1 
					 
					
						
						
							
							More DebugLoc propagation in floating-point methods.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63446  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-01-30 23:15:49 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						d34470c4f7 
					 
					
						
						
							
							Standardize comments about folding xforms.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63443  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-01-30 23:10:18 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						7581bfa275 
					 
					
						
						
							
							Get rid of the non-DebugLoc-ified getNOT() method.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63442  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-01-30 23:03:19 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						a03e74bf67 
					 
					
						
						
							
							Propagate debug loc info for some FP arithmetic methods.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63441  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-01-30 22:57:07 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						b0162f58c4 
					 
					
						
						
							
							Propagate debug loc info for some FP arithmetic methods.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63440  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-01-30 22:53:48 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						67a6768375 
					 
					
						
						
							
							Propagate debug loc info for BIT_CONVERT.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63439  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-01-30 22:44:24 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						8509c90a20 
					 
					
						
						
							
							Propagate debug loc info for more *_EXTEND methods.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63437  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-01-30 22:33:24 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						683c95764a 
					 
					
						
						
							
							Propagate debug loc info for ANY_EXTEND.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63436  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-01-30 22:27:33 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						6ce610f04b 
					 
					
						
						
							
							Propagate debug loc info for some of the *_EXTEND functions.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63434  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-01-30 22:23:15 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						34584e6aed 
					 
					
						
						
							
							- Propagate debug loc info for SELECT.  
						
						... 
						
						
						
						- Added xform for (select X, 1, Y) and (select X, Y, 0), which was commented on,
  but missing.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63428  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-01-30 22:02:18 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						8810337e36 
					 
					
						
						
							
							Propagate debug loc info for Shifts.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63424  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-01-30 21:37:17 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						317bd709bd 
					 
					
						
						
							
							Propagate debug loc info for XOR and MatchRotate.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63420  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-01-30 21:14:50 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						0902564479 
					 
					
						
						
							
							Propagate debug loc info for OR. Also clean up some comments.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63419  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-01-30 20:59:34 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						6af7618b23 
					 
					
						
						
							
							Perform obvious constant arithmetic folding.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63417  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-01-30 20:50:00 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						2627a881e1 
					 
					
						
						
							
							Propagate debug loc info for AND. Also clean up some comments.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63416  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-01-30 20:43:18 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						b74c8675b1 
					 
					
						
						
							
							Propagate debug loc info in SimplifyBinOpWithSameOpcodeHands.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63411  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-01-30 19:25:47 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						826d11463b 
					 
					
						
						
							
							Propagate debug loc info in SimplifyNodeWithTwoResults.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63376  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-01-30 03:08:40 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						326411dc69 
					 
					
						
						
							
							Propagate debug loc info for MULHS.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63375  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-01-30 03:00:18 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						6d3bf8c4c3 
					 
					
						
						
							
							Propagate debug loc info for SREM and UREM.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63374  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-01-30 02:57:00 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						07d8514049 
					 
					
						
						
							
							Propagate debug loc info for UDIV.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63373  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-01-30 02:55:25 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						944d34bfe8 
					 
					
						
						
							
							Propagate debug loc info for SDIV.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63372  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-01-30 02:52:17 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						73e16b2869 
					 
					
						
						
							
							Forgot to propagate debug loc info here.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63371  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-01-30 02:49:26 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						9c8148ac93 
					 
					
						
						
							
							Propagate debug loc info for MUL.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63369  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-01-30 02:45:56 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						b0702e0b7e 
					 
					
						
						
							
							Propagate debug loc info in SUB.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63368  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-01-30 02:42:10 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						14036c00c0 
					 
					
						
						
							
							Propagate debug loc info in ADDC and ADDE.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63367  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-01-30 02:38:00 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						f4eb2269eb 
					 
					
						
						
							
							Propagate debug loc info in DAG combine's "ADD".  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63366  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-01-30 02:31:17 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						d69c3141ed 
					 
					
						
						
							
							- Propagate debug loc info in combineSelectAndUse().  
						
						... 
						
						
						
						- Modify ReassociateOps so that the resulting SDValue is what the comment claims
  it is.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63365  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-01-30 02:23:43 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						5c71acfb06 
					 
					
						
						
							
							Propagate debug location info for the token factor.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63355  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-01-30 01:13:16 +00:00 
						 
				 
			
				
					
						
							
							
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						35247c3513 
					 
					
						
						
							
							Add DebugLoc propagation to some of the methods in DAG combiner.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63350  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-01-30 00:45:56 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						e5af2d3a22 
					 
					
						
						
							
							Make x86's BT instruction matching more thorough, and add some  
						
						... 
						
						
						
						dagcombines that help it match in several more cases. Add
several more cases to test/CodeGen/X86/bt.ll. This doesn't
yet include matching for BT with an immediate operand, it
just covers more register+register cases.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63266  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-01-29 01:59:02 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						f560ffae1f 
					 
					
						
						
							
							Make isOperationLegal do what its name suggests, and introduce a  
						
						... 
						
						
						
						new isOperationLegalOrCustom, which does what isOperationLegal
previously did.
Update a bunch of callers to use isOperationLegalOrCustom
instead of isOperationLegal. In some case it wasn't obvious
which behavior is desired; when in doubt I changed then to
isOperationLegalOrCustom as that preserves their previous
behavior.
This is for the second half of PR3376.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63212  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-01-28 17:46:25 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						ce9bc12c6f 
					 
					
						
						
							
							Add an assertion to the form of SelectionDAG::getConstant that takes  
						
						... 
						
						
						
						a uint64_t to verify that the value is in range for the given type,
to help catch accidental overflow. Fix a few places that relied on
getConstant implicitly truncating the value.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63128  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-01-27 20:39:34 +00:00