Chris Lattner 
							
						 
					 
					
						
						
							
						
						1e7558b656 
					 
					
						
						
							
							make reassociate more careful about not leaving around dead mul's  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92370  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-31 19:34:45 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						f8a447de16 
					 
					
						
						
							
							remove debug  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92369  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-31 19:25:19 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						69e98e2c0f 
					 
					
						
						
							
							teach reassociate to factor x+x+x -> x*3.  While I'm at it,  
						
						... 
						
						
						
						fix RemoveDeadBinaryOp to actually do something.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92368  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-31 19:24:52 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						9f7b7089be 
					 
					
						
						
							
							change reassociate to use SmallVector for its key datastructures  
						
						... 
						
						
						
						instead of std::vector.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92366  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-31 18:40:32 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						9cd1bc4f8b 
					 
					
						
						
							
							change an if to an assert, fix comment.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92364  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-31 18:18:46 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						94285e620b 
					 
					
						
						
							
							move the rest of the add optimization code out to OptimizeAdd,  
						
						... 
						
						
						
						improve some comments, simplify a bit of code.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92363  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-31 18:17:13 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						9fdaefad58 
					 
					
						
						
							
							factor statistic updating better.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92362  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-31 17:51:05 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						13a754ce92 
					 
					
						
						
							
							simple fix for an incorrect factoring which causes a  
						
						... 
						
						
						
						miscompilation, PR5458.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92354  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-31 08:33:49 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						dbe85bffd7 
					 
					
						
						
							
							fix refactoro  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92349  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-31 08:23:09 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						f3f55a9bc1 
					 
					
						
						
							
							factor code out into helper functions.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92347  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-31 07:59:34 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						8d93b259f6 
					 
					
						
						
							
							switch some std::vector's to smallvector.  Reduce nesting.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92346  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-31 07:48:51 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						ec531233a1 
					 
					
						
						
							
							use more modern datastructures.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92344  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-31 07:33:14 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						1befe643b2 
					 
					
						
						
							
							clean up -debug output.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92343  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-31 07:17:37 +00:00 
						 
				 
			
				
					
						
							
							
								Douglas Gregor 
							
						 
					 
					
						
						
							
						
						7e54d5b156 
					 
					
						
						
							
							Document the edit-distance algorithm used in StringRef, switch it over  
						
						... 
						
						
						
						to SmallVector, and add a unit test.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92340  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-31 04:24:34 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						f0908a351a 
					 
					
						
						
							
							fix Analysis/DebugInfo.h to not include Metadata.h.  Do this  
						
						... 
						
						
						
						by moving one method out of line and eliminating redundant checks
from other methods.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92337  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-31 03:02:08 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						c65b72ca26 
					 
					
						
						
							
							use early exits to reduce indentation.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92335  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-31 02:33:14 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						85b1912dba 
					 
					
						
						
							
							eliminate another copy of the mdnode printing logic, simplify the  
						
						... 
						
						
						
						one that remains.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92334  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-31 02:31:59 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						2b4b1e2e60 
					 
					
						
						
							
							random tidying for MDNode printing.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92333  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-31 02:27:30 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						bd72b3201b 
					 
					
						
						
							
							eliminate a bunch of useless forwarding functions with one caller.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92332  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-31 02:23:35 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						307c9893fc 
					 
					
						
						
							
							make mdnMap type safe, rename accessors for consistency with the rest of llvm.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92331  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-31 02:20:11 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						51ea55f0ec 
					 
					
						
						
							
							metadata can't be a global var initializer.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92330  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-31 02:15:45 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						6e6b1805da 
					 
					
						
						
							
							simplify mdnode printing logic.  Now N->dump() only  
						
						... 
						
						
						
						dumps one node instead of all of them.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92329  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-31 02:13:35 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						fdb3356477 
					 
					
						
						
							
							unify two copies of the NamedMDNode printing code.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92327  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-31 01:54:05 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						7d054b385f 
					 
					
						
						
							
							fix printing of function-local metadata to print all the operands of the  
						
						... 
						
						
						
						mdnode, not just operand 0 over and over.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92326  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-31 01:44:44 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						4a3d3a54eb 
					 
					
						
						
							
							simplify printing of mdstring and Argument.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92325  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-31 01:41:14 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						38cf02ebc9 
					 
					
						
						
							
							simplify asmprinting of NamedMDNode  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92324  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-31 01:36:50 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						183912af79 
					 
					
						
						
							
							Remove #include of metadata.h from intrinsicinst.h.  The only  
						
						... 
						
						
						
						method that needs it (DbgValueInst::getValue) has been moved out
of line.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92323  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-31 01:32:41 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						5d0cacdbb6 
					 
					
						
						
							
							rename "elements" of metadata to "operands".  "Elements" are  
						
						... 
						
						
						
						things that occur in types.  "operands" are things that occur
in values.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92322  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-31 01:22:29 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						b76359e36e 
					 
					
						
						
							
							Optimize MDNode to coallocate the operand list immediately  
						
						... 
						
						
						
						after the MDNode in memory.  This eliminates the operands
pointer and saves a new[] per node.
Note that the code in DIDerivedType::replaceAllUsesWith is wrong
and quite scary.  A MDNode should not be RAUW'd with something
else: this changes all uses of the mdnode, which may not be debug
info related!  Debug info should use something non-mdnode for
declarations.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92321  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-31 01:05:46 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						cc7b011728 
					 
					
						
						
							
							tidy  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92320  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-31 00:51:46 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						54a1f9f9c1 
					 
					
						
						
							
							do not bother reuniquing mdnodes whose operands drop to null.  Doing  
						
						... 
						
						
						
						so can be a huge performance issue when tearing down modules and mdnodes
are not guaranteed to be unique anyway.  This speeds up:
$ time ~/llvm/Release/bin/clang gcc.c -w -S -g
from 72 to 35s, where gcc.c is from:
http://people.csail.mit.edu/smcc/projects/single-file-programs/ 
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92315  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-30 21:42:11 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						83738a20dd 
					 
					
						
						
							
							remove some misleading comments.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92311  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-30 20:25:09 +00:00 
						 
				 
			
				
					
						
							
							
								Douglas Gregor 
							
						 
					 
					
						
						
							
						
						441c8b4ad1 
					 
					
						
						
							
							Implement edit distance for StringRef  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92309  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-30 17:23:44 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						7fccf76048 
					 
					
						
						
							
							remove some fixme's  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92304  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-30 06:00:36 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						1340dd3708 
					 
					
						
						
							
							now that instruction metadata is only parsed in one place, eliminate the  
						
						... 
						
						
						
						parser-global MDsOnInst vector and make ParseInstructionMetadata return
its result by-ref through an argument like the entire rest of the parser.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92302  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-30 05:48:36 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						c3a6c5c83b 
					 
					
						
						
							
							reimplement ParseOptionalInfo as ParseOptionalCommaAlign, correctly  
						
						... 
						
						
						
						handle the comma case for metadata.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92301  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-30 05:44:30 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						b8c4686a46 
					 
					
						
						
							
							rename ParseOptionalCustomMetadata -> ParseInstructionMetadata,  
						
						... 
						
						
						
						and make it non-optional.  This fixes the bug where we'd accept
and ignore a spurious comma after some instructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92300  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-30 05:31:19 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						a7d7f2c023 
					 
					
						
						
							
							convert 4 more instructions over.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92299  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-30 05:27:33 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						f1bc7ce7b3 
					 
					
						
						
							
							add facilities to start factoring instruction metadata parsing  
						
						... 
						
						
						
						out of each opcode's handler.  Change ret over so far.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92298  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-30 05:23:43 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						628c13ad76 
					 
					
						
						
							
							reimplement insertvalue/extractvalue metadata handling to not blindly  
						
						... 
						
						
						
						accept invalid input.  Actually add a testcase.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92297  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-30 05:14:00 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						fa149ae923 
					 
					
						
						
							
							remove two bogus calls that accepted metadata in the middle of insert/extract value  
						
						... 
						
						
						
						*constant exprs*.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92296  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-30 05:04:46 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						1d92831759 
					 
					
						
						
							
							rename NamedOrCustomMD -> MetadataVar to follow conventions of all the rest of the code.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92295  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-30 05:02:06 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						e434d277ca 
					 
					
						
						
							
							rename lltok::Metadata -> lltok::exclaim.  We name tokens  
						
						... 
						
						
						
						after their syntactic form, not their semantic form.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92294  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-30 04:56:59 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						0834e6a07b 
					 
					
						
						
							
							rename MetadataCache -> NumberedMetadata to follow the convention  
						
						... 
						
						
						
						used by other things.  Convert it to a vector since it is a dense 
numbering.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92293  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-30 04:51:58 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						a73523958d 
					 
					
						
						
							
							rewrite ParseMDNodeVector to follow the normal patter used in the .ll parser.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92292  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-30 04:42:57 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						4a72efc0ad 
					 
					
						
						
							
							rename ParseMDNode -> ParseMDNodeID, since it parses  !42 , not !{... } as you'd expect.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92291  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-30 04:15:23 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						860775c2b0 
					 
					
						
						
							
							fix parsing of mdstring values.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92290  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-30 04:13:37 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						c49363bcd9 
					 
					
						
						
							
							remove the code added in r90497.  It has several major issues and no tests.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92288  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-30 02:20:07 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						287881d510 
					 
					
						
						
							
							split t_Metadata into t_MDNode and t_MDString, eliminating some unsafe casting.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92287  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-30 02:11:14 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						3f5132a024 
					 
					
						
						
							
							factor code even more.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92280  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-29 22:40:21 +00:00