Gabor Greif
							
						 
						
							 
							
							
							
							
								
							
							
								f0084e1333 
								
							 
						 
						
							
							
								
								simplify  
							
							 
							
							... 
							
							
							
							llvm-svn: 109589 
							
						 
						
							2010-07-28 15:52:43 +00:00  
						
					 
				
					
						
							
							
								 
								Gabor Greif
							
						 
						
							 
							
							
							
							
								
							
							
								7b0a5fd2a5 
								
							 
						 
						
							
							
								
								simplify: CallSite::get --> CallSite constructor  
							
							 
							
							... 
							
							
							
							llvm-svn: 109506 
							
						 
						
							2010-07-27 15:02:37 +00:00  
						
					 
				
					
						
							
							
								 
								Dan Gohman
							
						 
						
							 
							
							
							
							
								
							
							
								0141c13b22 
								
							 
						 
						
							
							
								
								Remove LCSSA's bogus dependence on LoopSimplify and LoopSimplify's bogus  
							
							 
							
							... 
							
							
							
							dependence on DominanceFrontier. Instead, add an explicit DominanceFrontier
pass in StandardPasses.h to ensure that it gets scheduled at the right
time.
Declare that loop unrolling preserves ScalarEvolution, and shuffle some
getAnalysisUsages.
This eliminates one LoopSimplify and one LCCSA run in the standard
compile opts sequence.
llvm-svn: 109413 
							
						 
						
							2010-07-26 18:11:16 +00:00  
						
					 
				
					
						
							
							
								 
								Dan Gohman
							
						 
						
							 
							
							
							
							
								
							
							
								a7908ae369 
								
							 
						 
						
							
							
								
								Preserve ScalarEvolution in the loop unroller.  
							
							 
							
							... 
							
							
							
							llvm-svn: 109412 
							
						 
						
							2010-07-26 18:02:06 +00:00  
						
					 
				
					
						
							
							
								 
								Nick Lewycky
							
						 
						
							 
							
							
							
							
								
							
							
								7bc0443f2b 
								
							 
						 
						
							
							
								
								Revert this because we can't clone cyclic MDNodes which are creating during a  
							
							 
							
							... 
							
							
							
							build of llvm-gcc.
llvm-svn: 109355 
							
						 
						
							2010-07-24 20:54:02 +00:00  
						
					 
				
					
						
							
							
								 
								Nick Lewycky
							
						 
						
							 
							
							
							
							
								
							
							
								14b69d59dd 
								
							 
						 
						
							
							
								
								Whether function-local or not, a MDNode may reference a Function in which case  
							
							 
							
							... 
							
							
							
							it needs to be mapped to refer to the function in the new module, not the old
one. Fixes PR7700.
llvm-svn: 109353 
							
						 
						
							2010-07-24 19:43:25 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								5fa3813329 
								
							 
						 
						
							
							
								
								Speculatively revert 109117  
							
							 
							
							... 
							
							
							
							llvm-svn: 109132 
							
						 
						
							2010-07-22 18:44:00 +00:00  
						
					 
				
					
						
							
							
								 
								Gabor Greif
							
						 
						
							 
							
							
							
							
								
							
							
								59f9970ba5 
								
							 
						 
						
							
							
								
								keep in 80 cols  
							
							 
							
							... 
							
							
							
							llvm-svn: 109122 
							
						 
						
							2010-07-22 17:18:03 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								fac440cfb6 
								
							 
						 
						
							
							
								
								Map MDNode correctly.  
							
							 
							
							... 
							
							
							
							A non function local MDNode can have an operand which is cloned by MapValue(). 
llvm-svn: 109117 
							
						 
						
							2010-07-22 16:35:00 +00:00  
						
					 
				
					
						
							
							
								 
								Gabor Greif
							
						 
						
							 
							
							
							
							
								
							
							
								dde79d8f1a 
								
							 
						 
						
							
							
								
								mass elimination of reliance on automatic iterator dereferencing  
							
							 
							
							... 
							
							
							
							llvm-svn: 109103 
							
						 
						
							2010-07-22 13:36:47 +00:00  
						
					 
				
					
						
							
							
								 
								Gabor Greif
							
						 
						
							 
							
							
							
							
								
							
							
								36f25dfd33 
								
							 
						 
						
							
							
								
								pass dereferenced iterator to dyn_cast  
							
							 
							
							... 
							
							
							
							llvm-svn: 109098 
							
						 
						
							2010-07-22 11:43:44 +00:00  
						
					 
				
					
						
							
							
								 
								Gabor Greif
							
						 
						
							 
							
							
							
							
								
							
							
								3e44ea1917 
								
							 
						 
						
							
							
								
								undo 80 column trespassing I caused  
							
							 
							
							... 
							
							
							
							llvm-svn: 109092 
							
						 
						
							2010-07-22 10:37:47 +00:00  
						
					 
				
					
						
							
							
								 
								Dan Gohman
							
						 
						
							 
							
							
							
							
								
							
							
								2637cc1a38 
								
							 
						 
						
							
							
								
								Make NamedMDNode not be a subclass of Value, and simplify the interface  
							
							 
							
							... 
							
							
							
							for creating and populating NamedMDNodes.
llvm-svn: 109061 
							
						 
						
							2010-07-21 23:38:33 +00:00  
						
					 
				
					
						
							
							
								 
								Owen Anderson
							
						 
						
							 
							
							
							
							
								
							
							
								a57b97e7e7 
								
							 
						 
						
							
							
								
								Fix batch of converting RegisterPass<> to INTIALIZE_PASS().  
							
							 
							
							... 
							
							
							
							llvm-svn: 109045 
							
						 
						
							2010-07-21 22:09:45 +00:00  
						
					 
				
					
						
							
							
								 
								Dan Gohman
							
						 
						
							 
							
							
							
							
								
							
							
								7373bd9973 
								
							 
						 
						
							
							
								
								Use DebugLocs instead of MDNodes.  
							
							 
							
							... 
							
							
							
							llvm-svn: 108967 
							
						 
						
							2010-07-20 23:49:05 +00:00  
						
					 
				
					
						
							
							
								 
								Dan Gohman
							
						 
						
							 
							
							
							
							
								
							
							
								5c2e65b7bf 
								
							 
						 
						
							
							
								
								Don't look up the "dbg" metadata kind by name.  
							
							 
							
							... 
							
							
							
							llvm-svn: 108961 
							
						 
						
							2010-07-20 23:09:34 +00:00  
						
					 
				
					
						
							
							
								 
								Dan Gohman
							
						 
						
							 
							
							
							
							
								
							
							
								efd7f9c360 
								
							 
						 
						
							
							
								
								Reorder the contents of various getAnalysisUsage functions, eliminating  
							
							 
							
							... 
							
							
							
							a redundant loopsimplify run from the default -O2 sequence.
llvm-svn: 108539 
							
						 
						
							2010-07-16 17:58:45 +00:00  
						
					 
				
					
						
							
							
								 
								Gabor Greif
							
						 
						
							 
							
							
							
							
								
							
							
								6d673953e3 
								
							 
						 
						
							
							
								
								eliminate CallInst::ArgOffset  
							
							 
							
							... 
							
							
							
							llvm-svn: 108522 
							
						 
						
							2010-07-16 09:38:02 +00:00  
						
					 
				
					
						
							
							
								 
								Owen Anderson
							
						 
						
							 
							
							
							
							
								
							
							
								13700ebb02 
								
							 
						 
						
							
							
								
								Remove unneeded check, and correct style.  
							
							 
							
							... 
							
							
							
							llvm-svn: 108427 
							
						 
						
							2010-07-15 16:38:22 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								e41ab07c61 
								
							 
						 
						
							
							
								
								make various clients of ReplaceAndSimplifyAllUses tolerate  
							
							 
							
							... 
							
							
							
							it *changing* the things it replaces, not just causing them
to drop to null.  There is no functionality change yet, but 
this is required for a subsequent patch.
llvm-svn: 108414 
							
						 
						
							2010-07-15 06:06:04 +00:00  
						
					 
				
					
						
							
							
								 
								Owen Anderson
							
						 
						
							 
							
							
							
							
								
							
							
								2cfe91379b 
								
							 
						 
						
							
							
								
								Extend SimplifyCFG's common-destination folding heuristic to allow a single  
							
							 
							
							... 
							
							
							
							"bonus" instruction to be speculatively executed.  Add a heuristic to
ensure we're not tripping up out-of-order execution by checking that this bonus
instruction only uses values that were already guaranteed to be available.
This allows us to eliminate the short circuit in (x&1)&&(x&2).
llvm-svn: 108351 
							
						 
						
							2010-07-14 19:52:16 +00:00  
						
					 
				
					
						
							
							
								 
								Gabor Greif
							
						 
						
							 
							
							
							
							
								
							
							
								8629f12bb8 
								
							 
						 
						
							
							
								
								cache dereferenced iterators  
							
							 
							
							... 
							
							
							
							llvm-svn: 108133 
							
						 
						
							2010-07-12 10:59:23 +00:00  
						
					 
				
					
						
							
							
								 
								Gabor Greif
							
						 
						
							 
							
							
							
							
								
							
							
								d993402df3 
								
							 
						 
						
							
							
								
								cache dereferenced iterators  
							
							 
							
							... 
							
							
							
							llvm-svn: 108132 
							
						 
						
							2010-07-12 10:49:54 +00:00  
						
					 
				
					
						
							
							
								 
								Gabor Greif
							
						 
						
							 
							
							
							
							
								
							
							
								fd8e7d4a0f 
								
							 
						 
						
							
							
								
								cache result of operator*  
							
							 
							
							... 
							
							
							
							llvm-svn: 107984 
							
						 
						
							2010-07-09 16:31:08 +00:00  
						
					 
				
					
						
							
							
								 
								Gabor Greif
							
						 
						
							 
							
							
							
							
								
							
							
								e7650c7c29 
								
							 
						 
						
							
							
								
								cache result of operator*  
							
							 
							
							... 
							
							
							
							llvm-svn: 107983 
							
						 
						
							2010-07-09 16:26:41 +00:00  
						
					 
				
					
						
							
							
								 
								Gabor Greif
							
						 
						
							 
							
							
							
							
								
							
							
								04af1e4f65 
								
							 
						 
						
							
							
								
								cache result of operator*  
							
							 
							
							... 
							
							
							
							llvm-svn: 107981 
							
						 
						
							2010-07-09 16:17:52 +00:00  
						
					 
				
					
						
							
							
								 
								Gabor Greif
							
						 
						
							 
							
							
							
							
								
							
							
								6d8870fc35 
								
							 
						 
						
							
							
								
								cache result of operator*  
							
							 
							
							... 
							
							
							
							llvm-svn: 107975 
							
						 
						
							2010-07-09 15:25:42 +00:00  
						
					 
				
					
						
							
							
								 
								Gabor Greif
							
						 
						
							 
							
							
							
							
								
							
							
								329c4d8ed9 
								
							 
						 
						
							
							
								
								cache result of operator*  
							
							 
							
							... 
							
							
							
							llvm-svn: 107974 
							
						 
						
							2010-07-09 15:25:09 +00:00  
						
					 
				
					
						
							
							
								 
								Gabor Greif
							
						 
						
							 
							
							
							
							
								
							
							
								4247949ce9 
								
							 
						 
						
							
							
								
								cache result of operator*  
							
							 
							
							... 
							
							
							
							llvm-svn: 107968 
							
						 
						
							2010-07-09 14:29:14 +00:00  
						
					 
				
					
						
							
							
								 
								Gabor Greif
							
						 
						
							 
							
							
							
							
								
							
							
								a02f232c1b 
								
							 
						 
						
							
							
								
								cache result of operator*  
							
							 
							
							... 
							
							
							
							llvm-svn: 107966 
							
						 
						
							2010-07-09 14:18:23 +00:00  
						
					 
				
					
						
							
							
								 
								Gabor Greif
							
						 
						
							 
							
							
							
							
								
							
							
								f0821f39ee 
								
							 
						 
						
							
							
								
								cache operator*'s result (in multiple functions)  
							
							 
							
							... 
							
							
							
							llvm-svn: 107965 
							
						 
						
							2010-07-09 14:02:13 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								cefe3831b7 
								
							 
						 
						
							
							
								
								MDString is already checked earlier.  
							
							 
							
							... 
							
							
							
							llvm-svn: 107516 
							
						 
						
							2010-07-02 21:13:23 +00:00  
						
					 
				
					
						
							
							
								 
								Jim Grosbach
							
						 
						
							 
							
							
							
							
								
							
							
								e74c78d539 
								
							 
						 
						
							
							
								
								lowerinvoke needs to handle aggregate function args like sjlj eh does.  
							
							 
							
							... 
							
							
							
							llvm-svn: 107335 
							
						 
						
							2010-06-30 22:22:59 +00:00  
						
					 
				
					
						
							
							
								 
								Gabor Greif
							
						 
						
							 
							
							
							
							
								
							
							
								e9acc46f65 
								
							 
						 
						
							
							
								
								use getArgOperand instead of getOperand  
							
							 
							
							... 
							
							
							
							llvm-svn: 107269 
							
						 
						
							2010-06-30 09:14:26 +00:00  
						
					 
				
					
						
							
							
								 
								Gabor Greif
							
						 
						
							 
							
							
							
							
								
							
							
								ec60adf161 
								
							 
						 
						
							
							
								
								use CallInst::ArgOffset  
							
							 
							
							... 
							
							
							
							llvm-svn: 107003 
							
						 
						
							2010-06-28 12:30:07 +00:00  
						
					 
				
					
						
							
							
								 
								Gabor Greif
							
						 
						
							 
							
							
							
							
								
							
							
								2de43a7c5c 
								
							 
						 
						
							
							
								
								use ArgOperand API and CallInst::ArgOffset  
							
							 
							
							... 
							
							
							
							llvm-svn: 107002 
							
						 
						
							2010-06-28 12:29:20 +00:00  
						
					 
				
					
						
							
							
								 
								Dale Johannesen
							
						 
						
							 
							
							
							
							
								
							
							
								ce97d55ad9 
								
							 
						 
						
							
							
								
								The hasMemory argument is irrelevant to how the argument  
							
							 
							
							... 
							
							
							
							for an "i" constraint should get lowered; PR 6309.  While
this argument was passed around a lot, this is the only
place it was used, so it goes away from a lot of other
places.
llvm-svn: 106893 
							
						 
						
							2010-06-25 21:55:36 +00:00  
						
					 
				
					
						
							
							
								 
								Gabor Greif
							
						 
						
							 
							
							
							
							
								
							
							
								e3ba486c9f 
								
							 
						 
						
							
							
								
								use ArgOperand API (one more hunk I could split)  
							
							 
							
							... 
							
							
							
							llvm-svn: 106825 
							
						 
						
							2010-06-25 07:58:41 +00:00  
						
					 
				
					
						
							
							
								 
								Gabor Greif
							
						 
						
							 
							
							
							
							
								
							
							
								5f3e656a1b 
								
							 
						 
						
							
							
								
								use ArgOperand API (some hunks I could split)  
							
							 
							
							... 
							
							
							
							llvm-svn: 106824 
							
						 
						
							2010-06-25 07:57:14 +00:00  
						
					 
				
					
						
							
							
								 
								Gabor Greif
							
						 
						
							 
							
							
							
							
								
							
							
								42f620cc55 
								
							 
						 
						
							
							
								
								use callsite to obtain all arguments  
							
							 
							
							... 
							
							
							
							llvm-svn: 106728 
							
						 
						
							2010-06-24 09:56:43 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								0dc3c2d37e 
								
							 
						 
						
							
							
								
								Use ValueMap instead of DenseMap.  
							
							 
							
							... 
							
							
							
							The ValueMapper used by various cloning utility maps MDNodes also.
llvm-svn: 106706 
							
						 
						
							2010-06-24 00:33:28 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								d8dedee96d 
								
							 
						 
						
							
							
								
								Use available typedef for " DenseMap<const Value*, Value*>".  
							
							 
							
							... 
							
							
							
							llvm-svn: 106699 
							
						 
						
							2010-06-24 00:00:42 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								b8f11de105 
								
							 
						 
						
							
							
								
								Cosmetic change.  
							
							 
							
							... 
							
							
							
							Do not use "ValueMap" as a name for a local variable or an argument.
llvm-svn: 106698 
							
						 
						
							2010-06-23 23:55:51 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								9ad629367d 
								
							 
						 
						
							
							
								
								Revert 106592 for now. It causes clang-selfhost build failure.  
							
							 
							
							... 
							
							
							
							llvm-svn: 106598 
							
						 
						
							2010-06-22 23:29:55 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								87f75f75be 
								
							 
						 
						
							
							
								
								If a metadata operand is seeded in value map and the metadata should also be seeded in value map. This is not limited to function local metadata.  
							
							 
							
							... 
							
							
							
							Failure to seed metdata in such cases causes troubles when in a cloned module, metadata from a new module refers to values in old module. Usually this results in mysterious bugpoint crashes. For example,
 Checking to see if we can delete global inits: Unknown constant!
 UNREACHABLE executed at /d/g/llvm/lib/Bitcode/Writer/BitcodeWriter.cpp:904!
llvm-svn: 106592 
							
						 
						
							2010-06-22 22:53:21 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								e43c6487da 
								
							 
						 
						
							
							
								
								While cloning a module, clone metadata attached with instructions.  
							
							 
							
							... 
							
							
							
							llvm-svn: 106591 
							
						 
						
							2010-06-22 22:50:42 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								e3fbbd19ed 
								
							 
						 
						
							
							
								
								Clone named metadata while cloning a module.  
							
							 
							
							... 
							
							
							
							Reapply Bob's patch.
llvm-svn: 106560 
							
						 
						
							2010-06-22 18:52:38 +00:00  
						
					 
				
					
						
							
							
								 
								Dan Gohman
							
						 
						
							 
							
							
							
							
								
							
							
								d2d1ae105d 
								
							 
						 
						
							
							
								
								Use pre-increment instead of post-increment when the result is not used.  
							
							 
							
							... 
							
							
							
							llvm-svn: 106542 
							
						 
						
							2010-06-22 15:08:57 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								f040dec68a 
								
							 
						 
						
							
							
								
								Revert 106528. It is causing self host failures.  
							
							 
							
							... 
							
							
							
							llvm-svn: 106529 
							
						 
						
							2010-06-22 06:14:09 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								b195eb4acf 
								
							 
						 
						
							
							
								
								Do not rely on DenseMap slot which can be easily invalidated when DenseMap grows.  
							
							 
							
							... 
							
							
							
							llvm-svn: 106528 
							
						 
						
							2010-06-22 05:16:56 +00:00