Nick Lewycky 
							
						 
					 
					
						
						
							
						
						87f8e49027 
					 
					
						
						
							
							Remove unnecessary #include "llvm/LLVMContext.h".  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90836  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-08 05:45:41 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						08bc2701a2 
					 
					
						
						
							
							fix PR5698  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90708  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-06 17:17:23 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						bc9a28dd54 
					 
					
						
						
							
							constant fold loads from memcpy's from global constants.  This is important  
						
						... 
						
						
						
						because clang lowers nontrivial automatic struct/array inits to memcpy from
a global array.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90698  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-06 05:29:56 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						cb9cbc4949 
					 
					
						
						
							
							add support for forwarding mem intrinsic values to non-local loads.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90697  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-06 04:54:31 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						faf815b938 
					 
					
						
						
							
							Handle forwarding local memsets to loads.  For example, we optimize this:  
						
						... 
						
						
						
						short x(short *A) {
  memset(A, 1, sizeof(*A)*100);
  return A[42];
}
to 'return 257' instead of doing the load.  
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90695  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-06 01:57:02 +00:00 
						 
				 
			
				
					
						
							
							
								Nick Lewycky 
							
						 
					 
					
						
						
							
						
						83e8ec73e1 
					 
					
						
						
							
							Generalize this optimization to work on equality comparisons between any two  
						
						... 
						
						
						
						integers that are constant except for a single bit (the same n-th bit in each).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90646  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-05 05:00:00 +00:00 
						 
				 
			
				
					
						
							
							
								Bob Wilson 
							
						 
					 
					
						
						
							
						
						39fdd6947c 
					 
					
						
						
							
							Fix up some comments.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90603  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-04 21:57:37 +00:00 
						 
				 
			
				
					
						
							
							
								Bob Wilson 
							
						 
					 
					
						
						
							
						
						d614a1f0a8 
					 
					
						
						
							
							Fix 80-column violations.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90601  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-04 21:51:35 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						45305d4ff6 
					 
					
						
						
							
							add an assert to make it really clear what this is doing.  Return singularval as  
						
						... 
						
						
						
						a compile time perf optimization to avoid a load.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90507  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-04 01:03:32 +00:00 
						 
				 
			
				
					
						
							
							
								Bob Wilson 
							
						 
					 
					
						
						
							
						
						4a8ee23a81 
					 
					
						
						
							
							Fix a comment typo.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90487  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-03 21:47:07 +00:00 
						 
				 
			
				
					
						
							
							
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						c9f2027adb 
					 
					
						
						
							
							Fix this crasher, and add a FIXME for a missed optimization.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90408  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-03 03:43:29 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						7896c9f436 
					 
					
						
						
							
							improve portability to avoid conflicting with std::next in c++'0x.  
						
						... 
						
						
						
						Patch by Howard Hinnant!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90365  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-03 00:50:42 +00:00 
						 
				 
			
				
					
						
							
							
								Jim Grosbach 
							
						 
					 
					
						
						
							
						
						43a8241b65 
					 
					
						
						
							
							Move EliminateDuplicatePHINodes() from SimplifyCFG.cpp to Local.cpp  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90324  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-02 17:06:45 +00:00 
						 
				 
			
				
					
						
							
							
								Andreas Neustifter 
							
						 
					 
					
						
						
							
						
						059a983531 
					 
					
						
						
							
							Cheap, mostly strict, stable sorting.  
						
						... 
						
						
						
						This is necessary for tests so the results are comparable.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90320  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-02 15:57:15 +00:00 
						 
				 
			
				
					
						
							
							
								Owen Anderson 
							
						 
					 
					
						
						
							
						
						9ff5a23186 
					 
					
						
						
							
							Cleanup/remove some parts of the lifetime region handling code in memdep and GVN,  
						
						... 
						
						
						
						per Chris' comments.  Adjust testcases to match.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90304  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-02 07:35:19 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						720e790480 
					 
					
						
						
							
							factor some code better.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90299  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-02 06:44:58 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						65a9ab4f8f 
					 
					
						
						
							
							formatting cleanups.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90298  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-02 06:35:55 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						bf796323b2 
					 
					
						
						
							
							tidy up, remove dependence on order of evaluation of function args from EmitMemCpy.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90297  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-02 06:05:42 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						46875c0bfb 
					 
					
						
						
							
							fix PR5640 by tracking whether a block is the header of a loop more  
						
						... 
						
						
						
						precisely, which prevents us from infinitely peeling the loop.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90211  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-01 06:04:43 +00:00 
						 
				 
			
				
					
						
							
							
								Benjamin Kramer 
							
						 
					 
					
						
						
							
						
						e6f329476c 
					 
					
						
						
							
							Revert r90089 for now, it's breaking selfhost.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90097  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-11-29 21:17:48 +00:00 
						 
				 
			
				
					
						
							
							
								Benjamin Kramer 
							
						 
					 
					
						
						
							
						
						4aac07e898 
					 
					
						
						
							
							Fix two FIXMEs.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90089  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-11-29 20:29:30 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						cd188e9665 
					 
					
						
						
							
							add testcases for the foo_with_overflow op xforms added recently and  
						
						... 
						
						
						
						fix bugs exposed by the tests.  Testcases from Alastair Lynn!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90056  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-11-29 02:57:29 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						3f40e23392 
					 
					
						
						
							
							Implement PR5634.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90046  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-11-29 00:51:17 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						0c264b16b0 
					 
					
						
						
							
							reenable load address insertion in load pre.  This allows us to  
						
						... 
						
						
						
						handle cases like this:
void test(int N, double* G) {
  long j;
  for (j = 1; j < N - 1; j++)
      G[j+1] = G[j] + G[j+1];
}
where G[1] isn't live into the loop.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90041  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-11-28 16:08:18 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						dd696052f0 
					 
					
						
						
							
							Enhance InsertPHITranslatedPointer to be able to return a list of newly  
						
						... 
						
						
						
						inserted instructions.  No functionality change until someone starts using it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90039  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-11-28 15:39:14 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						971fd57f7d 
					 
					
						
						
							
							disable value insertion for now, I need to figure out how  
						
						... 
						
						
						
						to inform GVN about the newly inserted values.  This fixes 
PR5631.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90022  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-11-27 22:50:07 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						6f7b210b25 
					 
					
						
						
							
							Rework InsertPHITranslatedPointer to handle the recursive case, this  
						
						... 
						
						
						
						fixes PR5630 and sets the stage for the next phase of goodness (testcase
pending).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90019  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-11-27 22:05:15 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						8aee8efc0c 
					 
					
						
						
							
							factor some logic out of instcombine into a new SimplifyAddInst method.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90011  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-11-27 17:42:22 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						8976e5950f 
					 
					
						
						
							
							fix PR5436 by making the 'simple' case of SRoA not promote out of range  
						
						... 
						
						
						
						array indexes.  The "complex" case of SRoA still handles them, and correctly.
This fixes a weirdness where we'd correctly avoid transforming A[0][42] if
the 42 was too large, but we'd only do it if it was one gep, not two separate
ones.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90007  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-11-27 16:37:41 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						616613d7a4 
					 
					
						
						
							
							teach GVN's load PRE to insert computations of the address in predecessors  
						
						... 
						
						
						
						where it is not available.  It's unclear how to get this inserted 
computation into GVN's scalar availability sets, Owen, help? :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89997  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-11-27 08:25:10 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						62deff066c 
					 
					
						
						
							
							Fix phi translation in load PRE to agree with the phi  
						
						... 
						
						
						
						translation done by memdep, and reenable gep translation 
again.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89992  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-11-27 06:31:14 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						c514c1f521 
					 
					
						
						
							
							factor some instcombine simplifications for getelementptr out to a new  
						
						... 
						
						
						
						SimplifyGEPInst method in InstructionSimplify.h.  No functionality change.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89980  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-11-27 00:29:05 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						998e25a143 
					 
					
						
						
							
							fix crash on Transforms/InstCombine/intrinsics.ll introduced by r89970  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89972  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-11-26 22:08:06 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						21f83a2f95 
					 
					
						
						
							
							Fix PR5471 by removing an instcombine xform.  Some pieces of the code  
						
						... 
						
						
						
						generates store to undef and some generates store to null as the idiom
for undefined behavior.  Since simplifycfg zaps both, don't remove the
undefined behavior in instcombine.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89971  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-11-26 22:04:42 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						2bbac75e5a 
					 
					
						
						
							
							implement a bunch of xforms for overflow intrinsics, based on a patch  
						
						... 
						
						
						
						by Alastair Lynn.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89970  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-11-26 21:42:47 +00:00 
						 
				 
			
				
					
						
							
							
								Edward O'Callaghan 
							
						 
					 
					
						
						
							
						
						25798439da 
					 
					
						
						
							
							Reverting patch in revision 89758, initial attempt at fixing PR5373 has proven to be bogus.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89844  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-11-25 05:38:41 +00:00 
						 
				 
			
				
					
						
							
							
								Edward O'Callaghan 
							
						 
					 
					
						
						
							
						
						de8d3b73c8 
					 
					
						
						
							
							Fix for PR5373, Credit to Jakub Staszak.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89758  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-11-24 11:51:52 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						01b97dd01e 
					 
					
						
						
							
							Make ConstantFoldConstantExpression recursively visit the entire  
						
						... 
						
						
						
						ConstantExpr, not just the top-level operator. This allows it to
fold many more constants.
Also, make GlobalOpt call ConstantFoldConstantExpression on
GlobalVariable initializers.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89659  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-11-23 16:22:21 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						8f3817f505 
					 
					
						
						
							
							Fix a use of an invalidated iterator in the case where there are multiple  
						
						... 
						
						
						
						adjacent uses of a dead basic block from the same user. This fixes PR5596.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89658  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-11-23 16:13:39 +00:00 
						 
				 
			
				
					
						
							
							
								Nick Lewycky 
							
						 
					 
					
						
						
							
						
						ce2c51b670 
					 
					
						
						
							
							Pull LLVMContext out of PromoteMemToReg.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89645  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-11-23 03:50:44 +00:00 
						 
				 
			
				
					
						
							
							
								Nick Lewycky 
							
						 
					 
					
						
						
							
						
						2e0316fcf0 
					 
					
						
						
							
							Remove LLVMContext and its include.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89644  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-11-23 03:34:29 +00:00 
						 
				 
			
				
					
						
							
							
								Nick Lewycky 
							
						 
					 
					
						
						
							
						
						ae3d802953 
					 
					
						
						
							
							Remove unused LLVMContext.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89642  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-11-23 03:29:18 +00:00 
						 
				 
			
				
					
						
							
							
								Nick Lewycky 
							
						 
					 
					
						
						
							
						
						55bd8bd6eb 
					 
					
						
						
							
							Reapply r88830 with a bugfix: this transform only applies to icmp eq/ne. This  
						
						... 
						
						
						
						fixes part of PR5438.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89639  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-11-23 03:17:33 +00:00 
						 
				 
			
				
					
						
							
							
								Eric Christopher 
							
						 
					 
					
						
						
							
						
						80bf1d5278 
					 
					
						
						
							
							Add more optimizations for object size checking, enable handling of  
						
						... 
						
						
						
						object size intrinsic and verify return type is correct. Collect various
code in one place.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89523  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-11-21 01:01:30 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						a58a04921d 
					 
					
						
						
							
							Make Loop::getLoopLatch() work on loops which don't have preheaders, as  
						
						... 
						
						
						
						it may be used in contexts where preheader insertion may have failed due
to an indirectbr.
Make LoopSimplify's LoopSimplify::SeparateNestedLoop properly fail in
the case that it would require splitting an indirectbr edge.
These fix PR5502.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89484  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-11-20 20:51:18 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						6a2392131e 
					 
					
						
						
							
							Fix IPSCCP's code for deleting dead blocks to tolerate outstanding  
						
						... 
						
						
						
						blockaddress users. This fixes PR5569.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89483  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-11-20 20:19:14 +00:00 
						 
				 
			
				
					
						
							
							
								Daniel Dunbar 
							
						 
					 
					
						
						
							
						
						f7751c134a 
					 
					
						
						
							
							Revert "Add some rough optimizations for checking routines.", it buildeth not.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89482  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-11-20 20:17:30 +00:00 
						 
				 
			
				
					
						
							
							
								Eric Christopher 
							
						 
					 
					
						
						
							
						
						3bcaa8ac95 
					 
					
						
						
							
							Add some rough optimizations for checking routines.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89479  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-11-20 19:57:37 +00:00 
						 
				 
			
				
					
						
							
							
								Duncan Sands 
							
						 
					 
					
						
						
							
						
						76700ba64c 
					 
					
						
						
							
							Fix PR5563, an expensive checks failure when running on  
						
						... 
						
						
						
						tests/Transforms/InstCombine/shufflemask-undef.ll.  If
anyone cares, the use of 2*e here (and the equivalent
all over the place in instcombine) seems wrong, though
harmless: it should really be twice the length of the
input vector.  I think shufflevector used to require
that the mask have the same length as the input, but I
don't think that's true any more.  I don't care enough
about vectors to do anything about this...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89456  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-11-20 13:19:51 +00:00 
						 
				 
			
				
					
						
							
							
								Dan Gohman 
							
						 
					 
					
						
						
							
						
						f94b5edc45 
					 
					
						
						
							
							Extend CaptureTracking to indicate when a value is never stored, even  
						
						... 
						
						
						
						if it is not ultimately captured. Teach BasicAliasAnalysis that a 
local object address which does not escape and is never stored does
not alias with a value resulting from a load.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89398  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-11-19 21:57:48 +00:00