Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								841dd53555 
								
							 
						 
						
							
							
								
								Fix PR116  
							
							 
							
							... 
							
							
							
							llvm-svn: 10032 
							
						 
						
							2003-11-16 21:39:27 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								d76fe4ea7d 
								
							 
						 
						
							
							
								
								Implement feature: InstCombine/2003-11-13-ConstExprCastCall.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 9981 
							
						 
						
							2003-11-13 19:17:02 +00:00  
						
					 
				
					
						
							
							
								 
								Brian Gaeke
							
						 
						
							 
							
							
							
							
								
							
							
								960707c335 
								
							 
						 
						
							
							
								
								Put all LLVM code into the llvm namespace, as per bug 109.  
							
							 
							
							... 
							
							
							
							llvm-svn: 9903 
							
						 
						
							2003-11-11 22:41:34 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								1e6d3053f2 
								
							 
						 
						
							
							
								
								Reorganize code for locality, improve comments  
							
							 
							
							... 
							
							
							
							llvm-svn: 9857 
							
						 
						
							2003-11-10 04:42:42 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								4474336166 
								
							 
						 
						
							
							
								
								Adjust to new critical edge interface  
							
							 
							
							... 
							
							
							
							llvm-svn: 9853 
							
						 
						
							2003-11-10 04:10:50 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								984e11792f 
								
							 
						 
						
							
							
								
								Do NOT inline self recursive calls into other functions.  This is causing the  
							
							 
							
							... 
							
							
							
							pool allocator no end of trouble, and doesn't make a lot of sense anyway.  This
does not solve the problem with mutually recursive functions, but they are much less common.
llvm-svn: 9828 
							
						 
						
							2003-11-09 05:05:36 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								d61abe82d3 
								
							 
						 
						
							
							
								
								Untypo  
							
							 
							
							... 
							
							
							
							llvm-svn: 9827 
							
						 
						
							2003-11-09 05:04:25 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								ad03afcb34 
								
							 
						 
						
							
							
								
								Declare FunctionPasses as such so that they can be used in FunctionPassManager.  
							
							 
							
							... 
							
							
							
							llvm-svn: 9768 
							
						 
						
							2003-11-07 17:20:18 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								38cd27e450 
								
							 
						 
						
							
							
								
								Various cleanups and efficiency improvements  
							
							 
							
							... 
							
							
							
							llvm-svn: 9753 
							
						 
						
							2003-11-06 19:46:29 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								b0a4b49b23 
								
							 
						 
						
							
							
								
								Fix bug: PR93  
							
							 
							
							... 
							
							
							
							llvm-svn: 9752 
							
						 
						
							2003-11-06 19:18:49 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								4e1b467594 
								
							 
						 
						
							
							
								
								Fix the problem with running cleanups in bugpoint:  We were deleting arguments  
							
							 
							
							... 
							
							
							
							of intrinsic functions, causing the verifier to fail.
llvm-svn: 9745 
							
						 
						
							2003-11-05 21:53:41 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								9e60aced2e 
								
							 
						 
						
							
							
								
								Split behavior into two pieces  
							
							 
							
							... 
							
							
							
							llvm-svn: 9741 
							
						 
						
							2003-11-05 21:43:02 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								8055fb3afa 
								
							 
						 
						
							
							
								
								Yet more fixes for constant expr shifts  
							
							 
							
							... 
							
							
							
							llvm-svn: 9739 
							
						 
						
							2003-11-05 20:43:58 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								ba55bd37fe 
								
							 
						 
						
							
							
								
								Further fixes for PR93  
							
							 
							
							... 
							
							
							
							llvm-svn: 9738 
							
						 
						
							2003-11-05 20:37:01 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								7c94d1171a 
								
							 
						 
						
							
							
								
								Fix flawed logic that was breaking several SPEC benchmarks, including gzip and crafty.  
							
							 
							
							... 
							
							
							
							llvm-svn: 9731 
							
						 
						
							2003-11-05 17:31:36 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								813ec04735 
								
							 
						 
						
							
							
								
								Be gcc 3.4 clean  
							
							 
							
							... 
							
							
							
							llvm-svn: 9725 
							
						 
						
							2003-11-05 06:12:18 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								8f2f598024 
								
							 
						 
						
							
							
								
								Fix bug with previous implementation:  
							
							 
							
							... 
							
							
							
							-      // ~(c-X) == X-(c-1) == X+(-c+1)
+      // ~(c-X) == X-c-1 == X+(-c-1)
Implement: C - ~X == X + (1+C)
llvm-svn: 9715 
							
						 
						
							2003-11-05 01:06:05 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								e580666532 
								
							 
						 
						
							
							
								
								Minor cleanup, plus implement InstCombine/xor.ll:test17  
							
							 
							
							... 
							
							
							
							llvm-svn: 9711 
							
						 
						
							2003-11-04 23:50:51 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								0f68fa6569 
								
							 
						 
						
							
							
								
								Implement InstCombine/xor.ll:test(15|16)  
							
							 
							
							... 
							
							
							
							llvm-svn: 9708 
							
						 
						
							2003-11-04 23:37:10 +00:00  
						
					 
				
					
						
							
							
								 
								John Criswell
							
						 
						
							 
							
							
							
							
								
							
							
								81587e798a 
								
							 
						 
						
							
							
								
								Checking in Chris's suggestions:  
							
							 
							
							... 
							
							
							
							Added assert() to ensure symbol table is well formed.
Added code to remember the value that was found; resolving types can change
the symbol table and invalidate the value of the iterator.
Added comments to the ResolveTypes() function (mainly for my own benefit).
Please feel free to correct the comments if they are not accurate.
llvm-svn: 9693 
							
						 
						
							2003-11-04 15:22:26 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								6444c37488 
								
							 
						 
						
							
							
								
								Implement InstCombine/cast-set.ll:test6[a].  This improves code generated for  
							
							 
							
							... 
							
							
							
							a hot function in em3d
llvm-svn: 9673 
							
						 
						
							2003-11-03 05:17:03 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								1693079e92 
								
							 
						 
						
							
							
								
								Implement InstCombine/cast-set.ll: test1, test2, test7  
							
							 
							
							... 
							
							
							
							llvm-svn: 9670 
							
						 
						
							2003-11-03 04:25:02 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								af7893203b 
								
							 
						 
						
							
							
								
								Fix bug with zero sized casts  
							
							 
							
							... 
							
							
							
							llvm-svn: 9667 
							
						 
						
							2003-11-03 01:29:41 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								d4d987dd4a 
								
							 
						 
						
							
							
								
								Fix bug in previous checkin  
							
							 
							
							... 
							
							
							
							llvm-svn: 9656 
							
						 
						
							2003-11-02 06:54:48 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								f4ad165e8b 
								
							 
						 
						
							
							
								
								Implement transmogriphication of allocation instructions  
							
							 
							
							... 
							
							
							
							llvm-svn: 9654 
							
						 
						
							2003-11-02 05:57:39 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								7f7285bab7 
								
							 
						 
						
							
							
								
								Fix PR78  
							
							 
							
							... 
							
							
							
							llvm-svn: 9648 
							
						 
						
							2003-11-02 02:06:27 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								b45d9077cb 
								
							 
						 
						
							
							
								
								Strip off CPR's manually, because if we don't, the inliner doesn't delete dead  
							
							 
							
							... 
							
							
							
							functions.  GRR
llvm-svn: 9641 
							
						 
						
							2003-10-31 21:05:58 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								686767f3f6 
								
							 
						 
						
							
							
								
								Fix bug: 2003-10-29-CallSiteResolve.ll & PR70  
							
							 
							
							... 
							
							
							
							llvm-svn: 9600 
							
						 
						
							2003-10-30 00:46:41 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								3420137e63 
								
							 
						 
						
							
							
								
								Refactor code, initial implementation of -insert-block-profiling pass  
							
							 
							
							... 
							
							
							
							llvm-svn: 9593 
							
						 
						
							2003-10-29 21:24:22 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								bcb0f4bf2e 
								
							 
						 
						
							
							
								
								Fix PR66 & ScalarRepl/2003-10-29-ArrayProblem.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 9585 
							
						 
						
							2003-10-29 17:55:44 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								e5f15cdc5f 
								
							 
						 
						
							
							
								
								Fix bug: ConstantMerge/2003-10-28-MergeExternalConstants.ll & PR64  
							
							 
							
							... 
							
							
							
							llvm-svn: 9579 
							
						 
						
							2003-10-29 06:01:26 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								3e5ff2568c 
								
							 
						 
						
							
							
								
								Check in statistifying patch for Bill  
							
							 
							
							... 
							
							
							
							llvm-svn: 9572 
							
						 
						
							2003-10-28 23:14:59 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								183fa7ceb3 
								
							 
						 
						
							
							
								
								Pass in argc & argv  
							
							 
							
							... 
							
							
							
							llvm-svn: 9563 
							
						 
						
							2003-10-28 22:42:24 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								c8ba0672ac 
								
							 
						 
						
							
							
								
								Initial checkin of profiling instrumentation pass.  So far, despite the  
							
							 
							
							... 
							
							
							
							file name, we only support function profiling.  This will be fixed in the
near future.
llvm-svn: 9547 
							
						 
						
							2003-10-28 18:59:04 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								233989316c 
								
							 
						 
						
							
							
								
								Eliminate using declarations  
							
							 
							
							... 
							
							
							
							llvm-svn: 9543 
							
						 
						
							2003-10-27 21:44:09 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								5e004e8ce0 
								
							 
						 
						
							
							
								
								Propagating constants to arguments can make other arguments constant.  For now  
							
							 
							
							... 
							
							
							
							do something dumb, and inefficient, but more complete.
llvm-svn: 9542 
							
						 
						
							2003-10-27 21:09:00 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								b727fb2663 
								
							 
						 
						
							
							
								
								Fix test: Linker/2003-10-27-LinkOncePromote.ll  
							
							 
							
							... 
							
							
							
							Fix PR58
llvm-svn: 9530 
							
						 
						
							2003-10-27 16:39:39 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								d9f4ffdf5e 
								
							 
						 
						
							
							
								
								Get the list of PHI node values before the basic block is split.  Also, add  
							
							 
							
							... 
							
							
							
							PHI node entries for unwind instructions just like for call instructions which
became invokes!  This fixes PR57, tested by
Inline/2003-10-26-InlineInvokeExceptionDestPhi.ll
llvm-svn: 9526 
							
						 
						
							2003-10-27 05:33:09 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								12b78db685 
								
							 
						 
						
							
							
								
								We might as well strip off any CPRs before propagation  
							
							 
							
							... 
							
							
							
							llvm-svn: 9437 
							
						 
						
							2003-10-23 18:49:23 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								05c71fb3e6 
								
							 
						 
						
							
							
								
								* We were forgetting to pass varargs arguments through a call  
							
							 
							
							... 
							
							
							
							* Add a work around for bug PR56, gross but necessary for now.
llvm-svn: 9428 
							
						 
						
							2003-10-23 17:44:53 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								f516c698ff 
								
							 
						 
						
							
							
								
								Check in initial version of ipcp  
							
							 
							
							... 
							
							
							
							llvm-svn: 9423 
							
						 
						
							2003-10-23 16:52:27 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								0658cc20bd 
								
							 
						 
						
							
							
								
								Make this pass substantially stronger by having it delete dead return values  
							
							 
							
							... 
							
							
							
							as well as arguments.  Now it can delete arguments and return values which are
only passed into other arguments or are returned, if they are dead.  This causes
it to delete several hundred extra args/retvals from the C++ hello world program,
shrinking it by about 2K.
llvm-svn: 9398 
							
						 
						
							2003-10-23 03:48:17 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								9e8fe49c37 
								
							 
						 
						
							
							
								
								This important patch fixes two warnings in the linker which can occur from linking  
							
							 
							
							... 
							
							
							
							valid pieces of code
llvm-svn: 9390 
							
						 
						
							2003-10-22 23:03:38 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								6d3425e87a 
								
							 
						 
						
							
							
								
								Update the 'used' flag correctly  
							
							 
							
							... 
							
							
							
							llvm-svn: 9366 
							
						 
						
							2003-10-22 04:43:18 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								12b3593dea 
								
							 
						 
						
							
							
								
								Loop over the module, not the symbol table.  This makes the code handle  
							
							 
							
							... 
							
							
							
							unused external functions again
llvm-svn: 9365 
							
						 
						
							2003-10-22 04:42:20 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								4cd99ffa57 
								
							 
						 
						
							
							
								
								Implement FunctionResolve/2003-10-21-GlobalResolveHack.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 9363 
							
						 
						
							2003-10-22 03:35:34 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								af2c00bf14 
								
							 
						 
						
							
							
								
								Fix bug: FunctionResolve/2003-10-21-GlobalTypeDifference.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 9359 
							
						 
						
							2003-10-21 23:17:56 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								4f2581f828 
								
							 
						 
						
							
							
								
								Fix bug: Linker/2003-10-21-ConflictingTypesTolerance.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 9357 
							
						 
						
							2003-10-21 22:46:38 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								9bc22b7439 
								
							 
						 
						
							
							
								
								Fix message to make more sense and confuse Chris less  
							
							 
							
							... 
							
							
							
							llvm-svn: 9354 
							
						 
						
							2003-10-21 21:52:20 +00:00  
						
					 
				
					
						
							
							
								 
								John Criswell
							
						 
						
							 
							
							
							
							
								
							
							
								29265fe981 
								
							 
						 
						
							
							
								
								Added LLVM copyright header.  
							
							 
							
							... 
							
							
							
							llvm-svn: 9321 
							
						 
						
							2003-10-21 15:17:13 +00:00  
						
					 
				
					
						
							
							
								 
								John Criswell
							
						 
						
							 
							
							
							
							
								
							
							
								4436c49787 
								
							 
						 
						
							
							
								
								Added LLVM copyright notice to Makefiles.  
							
							 
							
							... 
							
							
							
							llvm-svn: 9312 
							
						 
						
							2003-10-20 22:26:57 +00:00  
						
					 
				
					
						
							
							
								 
								John Criswell
							
						 
						
							 
							
							
							
							
								
							
							
								482202a601 
								
							 
						 
						
							
							
								
								Added LLVM project notice to the top of every C++ source file.  
							
							 
							
							... 
							
							
							
							Header files will be on the way.
llvm-svn: 9298 
							
						 
						
							2003-10-20 19:43:21 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								2d9c117e21 
								
							 
						 
						
							
							
								
								Reorder for minor efficiency gain  
							
							 
							
							... 
							
							
							
							llvm-svn: 9285 
							
						 
						
							2003-10-20 05:54:26 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								b94550e537 
								
							 
						 
						
							
							
								
								Change the Opcode enum for PHI nodes from "Instruction::PHINode" to "Instruction::PHI" to be more consistent with the other instructions.  
							
							 
							
							... 
							
							
							
							llvm-svn: 9269 
							
						 
						
							2003-10-19 21:34:28 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								b32f5748b7 
								
							 
						 
						
							
							
								
								Fix PR#50  
							
							 
							
							... 
							
							
							
							llvm-svn: 9227 
							
						 
						
							2003-10-18 06:14:59 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								f0fc9be634 
								
							 
						 
						
							
							
								
								ADd support for the new varargs instructions  
							
							 
							
							... 
							
							
							
							llvm-svn: 9225 
							
						 
						
							2003-10-18 05:56:52 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								1facf89eaf 
								
							 
						 
						
							
							
								
								Do not crash on empty structures  
							
							 
							
							... 
							
							
							
							llvm-svn: 9195 
							
						 
						
							2003-10-17 18:03:54 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								068ad84038 
								
							 
						 
						
							
							
								
								Add support for 'weak' linkage.  
							
							 
							
							... 
							
							
							
							llvm-svn: 9171 
							
						 
						
							2003-10-16 18:29:00 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								50b6858e2e 
								
							 
						 
						
							
							
								
								This code does not require random access use_lists  
							
							 
							
							... 
							
							
							
							llvm-svn: 9156 
							
						 
						
							2003-10-16 16:49:12 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								5dbb244edb 
								
							 
						 
						
							
							
								
								Eliminate using declaration  
							
							 
							
							... 
							
							
							
							Rewrite code to work with use_lists what are either random access or bidirectional
llvm-svn: 9155 
							
						 
						
							2003-10-16 16:48:53 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								f95d9b99b3 
								
							 
						 
						
							
							
								
								Decrease usage of use_size()  
							
							 
							
							... 
							
							
							
							llvm-svn: 9135 
							
						 
						
							2003-10-15 16:48:29 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								f77a856f3b 
								
							 
						 
						
							
							
								
								Cleanup  
							
							 
							
							... 
							
							
							
							llvm-svn: 9133 
							
						 
						
							2003-10-15 16:42:21 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								b4778c73c9 
								
							 
						 
						
							
							
								
								Do not move variable sized allocations to the top of the caller, which might  
							
							 
							
							... 
							
							
							
							break dominance relationships, and is otherwise bad.  This fixes bug:
Inline/2003-10-13-AllocaDominanceProblem.ll.  This also fixes miscompilation
of 3 176.gcc source files (reload1.c, global.c, flow.c)
llvm-svn: 9109 
							
						 
						
							2003-10-14 01:11:07 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								612cafef0a 
								
							 
						 
						
							
							
								
								Whoops, we inserted into the wrong set.  What's up with the dead set anyway?  
							
							 
							
							... 
							
							
							
							llvm-svn: 9094 
							
						 
						
							2003-10-13 16:49:21 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								951e7329e8 
								
							 
						 
						
							
							
								
								Use external df iterators to avoid revisiting blocks in functions with  
							
							 
							
							... 
							
							
							
							multiple setjmp calls.
llvm-svn: 9093 
							
						 
						
							2003-10-13 16:44:50 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								178957028b 
								
							 
						 
						
							
							
								
								Wrap code at 80 columns  
							
							 
							
							... 
							
							
							
							llvm-svn: 9073 
							
						 
						
							2003-10-13 05:04:27 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								44d2c3514a 
								
							 
						 
						
							
							
								
								Regularize header file comments  
							
							 
							
							... 
							
							
							
							llvm-svn: 9071 
							
						 
						
							2003-10-13 03:32:08 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								7cce14bfbf 
								
							 
						 
						
							
							
								
								Regularize header file comment, eliminate using's  
							
							 
							
							... 
							
							
							
							llvm-svn: 9069 
							
						 
						
							2003-10-13 03:30:47 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								f7a60cd9fa 
								
							 
						 
						
							
							
								
								Minor cleanups  
							
							 
							
							... 
							
							
							
							llvm-svn: 9067 
							
						 
						
							2003-10-13 01:02:33 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								56b8526083 
								
							 
						 
						
							
							
								
								Checkin an improvement contributed by Bill:  
							
							 
							
							... 
							
							
							
							Only transform call sites in a setjmp'ing function which are reachable from
the setjmp.  If the call dominates the setjmp (for example), the called
function cannot longjmp to the setjmp.
This dramatically reduces the number of invoke instructions created in some
large testcases.
llvm-svn: 9066 
							
						 
						
							2003-10-13 00:57:16 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								c4622a6955 
								
							 
						 
						
							
							
								
								Add support to the loop canonicalization pass to make it transform loops to  
							
							 
							
							... 
							
							
							
							have a SINGLE backedge.  This is useful to, for example, the -indvars pass.
This implements testcase LoopSimplify/single-backedge.ll and closes PR#34
llvm-svn: 9065 
							
						 
						
							2003-10-13 00:37:13 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								72272a70b8 
								
							 
						 
						
							
							
								
								Rename loop preheaders pass to loop simplify  
							
							 
							
							... 
							
							
							
							llvm-svn: 9061 
							
						 
						
							2003-10-12 21:52:28 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								55d4788397 
								
							 
						 
						
							
							
								
								File is renamed to LoopSimplify.cpp  
							
							 
							
							... 
							
							
							
							llvm-svn: 9059 
							
						 
						
							2003-10-12 21:44:18 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								154e4d5dea 
								
							 
						 
						
							
							
								
								First step in renaming the preheaders pass to loopsimplify  
							
							 
							
							... 
							
							
							
							llvm-svn: 9058 
							
						 
						
							2003-10-12 21:43:28 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								9703c02ce4 
								
							 
						 
						
							
							
								
								The preheader insertion pass only depends on the CFG.  Mark it as such, which  
							
							 
							
							... 
							
							
							
							allows GCCAS to only run it once.
llvm-svn: 9056 
							
						 
						
							2003-10-12 19:33:10 +00:00  
						
					 
				
					
						
							
							
								 
								Brian Gaeke
							
						 
						
							 
							
							
							
							
								
							
							
								b8a4ed6543 
								
							 
						 
						
							
							
								
								Include <cstdio> instead of <stdio.h>.  
							
							 
							
							... 
							
							
							
							llvm-svn: 9032 
							
						 
						
							2003-10-10 18:46:52 +00:00  
						
					 
				
					
						
							
							
								 
								Brian Gaeke
							
						 
						
							 
							
							
							
							
								
							
							
								cc31fddf13 
								
							 
						 
						
							
							
								
								Don't include Config/stdio.h or <stdio.h>.  
							
							 
							
							... 
							
							
							
							llvm-svn: 9031 
							
						 
						
							2003-10-10 18:46:29 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								8b2bd4ed47 
								
							 
						 
						
							
							
								
								Fix spelling.  
							
							 
							
							... 
							
							
							
							llvm-svn: 9027 
							
						 
						
							2003-10-10 17:57:28 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								b3acb4027e 
								
							 
						 
						
							
							
								
								Fixing the spelling of this filename.  
							
							 
							
							... 
							
							
							
							llvm-svn: 9009 
							
						 
						
							2003-10-10 16:57:31 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								35e56e7372 
								
							 
						 
						
							
							
								
								Update comment  
							
							 
							
							... 
							
							
							
							llvm-svn: 8965 
							
						 
						
							2003-10-08 16:56:11 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								0bbbe5d4c8 
								
							 
						 
						
							
							
								
								Use a set to keep track of which edges have been noticed as executable already  
							
							 
							
							... 
							
							
							
							to avoid reprocessing PHI nodes needlessly.  This speeds up the big bad PHI
testcase 43%: from 104.9826 to 73.5157s
llvm-svn: 8964 
							
						 
						
							2003-10-08 16:55:34 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								7324f7cd03 
								
							 
						 
						
							
							
								
								Minor fixes here and there  
							
							 
							
							... 
							
							
							
							llvm-svn: 8963 
							
						 
						
							2003-10-08 16:21:03 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								71ac22ffb5 
								
							 
						 
						
							
							
								
								Avoid building data structures we don't really need.  This improves the runtime  
							
							 
							
							... 
							
							
							
							of a test that Bill Wendling sent me from 228.5s to 105s.  Obviously there is
more improvement to be had, but this is a nice speedup which should be "felt"
by many programs.
llvm-svn: 8962 
							
						 
						
							2003-10-08 15:47:41 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								950fc785ae 
								
							 
						 
						
							
							
								
								whoops, don't accidentally lose variable names  
							
							 
							
							... 
							
							
							
							llvm-svn: 8955 
							
						 
						
							2003-10-07 22:58:41 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								75b4d1deec 
								
							 
						 
						
							
							
								
								Fix bug: InstCombine/cast.ll:test11 / PR#7  
							
							 
							
							... 
							
							
							
							llvm-svn: 8954 
							
						 
						
							2003-10-07 22:54:13 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								aec3d948cf 
								
							 
						 
						
							
							
								
								Refactor code a bit  
							
							 
							
							... 
							
							
							
							llvm-svn: 8952 
							
						 
						
							2003-10-07 22:32:43 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								f8492537eb 
								
							 
						 
						
							
							
								
								Fix bugzilla bug  #5  
							
							 
							
							... 
							
							
							
							llvm-svn: 8930 
							
						 
						
							2003-10-07 19:33:31 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								ed922162e1 
								
							 
						 
						
							
							
								
								Bill contributed this major rewrite of the -lowerswitch pass to make it generate  
							
							 
							
							... 
							
							
							
							logarithmic conditional branch sequences instead of linear sequences.  Thanks Bill!
llvm-svn: 8928 
							
						 
						
							2003-10-07 18:46:23 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								800aaaf207 
								
							 
						 
						
							
							
								
								Fix bug in previous checkin  
							
							 
							
							... 
							
							
							
							llvm-svn: 8922 
							
						 
						
							2003-10-07 15:17:02 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								e8ed4ef039 
								
							 
						 
						
							
							
								
								Minor speedups for the instcombine pass  
							
							 
							
							... 
							
							
							
							llvm-svn: 8894 
							
						 
						
							2003-10-06 17:11:01 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								6dc0ae2d18 
								
							 
						 
						
							
							
								
								Speed up the predicate used to decide when to inline by caching the size  
							
							 
							
							... 
							
							
							
							of callees between executions.
On eon, in release mode, this changes the inliner from taking 11.5712s
to taking 2.2066s.  In debug mode, it went from taking 14.4148s to
taking 7.0745s.  In release mode, this is a 24.7% speedup of gccas, in
debug mode, it's a total speedup of 11.7%.
This also makes it slightly more aggressive.  This could be because we
are not judging the size of the functions quite as accurately as before.
When we start looking at the performance of the generated code, this can
be investigated further.
llvm-svn: 8893 
							
						 
						
							2003-10-06 15:52:43 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								6aa34b0d0b 
								
							 
						 
						
							
							
								
								Avoid doing pointless work.  Amazingly, this makes us go faster.  
							
							 
							
							... 
							
							
							
							Running the inliner on 252.eon used to take 48.4763s, now it takes 14.4148s.
In release mode, it went from taking 25.8741s to taking 11.5712s.
This also fixes a FIXME.
llvm-svn: 8890 
							
						 
						
							2003-10-06 15:23:43 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								c30f22f57c 
								
							 
						 
						
							
							
								
								This changes the PromoteMemToReg function to create "pruned" SSA form, not  
							
							 
							
							... 
							
							
							
							"minimal" SSA form (in other words, it doesn't insert dead PHIs).  This
speeds up the mem2reg pass very significantly because it doesn't have to
do a lot of frivolous work in many common cases.
In the 252.eon function I have been playing with, this doesn't even insert
the 120 PHI nodes that it used to which were trivially dead (in the process
of promoting 356 alloca instructions overall).  This speeds up the mem2reg
pass from 1.2459s to 0.1284s.  More significantly, the DCE pass used to take
2.4138s to remove the 120 dead PHI nodes that mem2reg constructed, now it
takes 0.0134s (which is the time to scan the function and decide that there
is nothing dead).  So overall, on this one function, we speed things up a
total of 3.5179s, which is a 24.8x speedup!  :)
This change is tested by the Mem2Reg/2003-10-05-DeadPHIInsertion.ll test,
which now passes.
llvm-svn: 8884 
							
						 
						
							2003-10-05 22:19:20 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								a906bacfdd 
								
							 
						 
						
							
							
								
								Change the interface to PromoteMemToReg to also take a DominatorTree  
							
							 
							
							... 
							
							
							
							llvm-svn: 8883 
							
						 
						
							2003-10-05 21:20:13 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								8047152977 
								
							 
						 
						
							
							
								
								Speed up the mem2reg transform for allocas which are only read/written in a single  
							
							 
							
							... 
							
							
							
							basic block.  This is amazingly common in code generated by the C/C++ front-ends.
This change makes it not have to insert ANY phi nodes, whereas before it would insert
a ton of dead ones which DCE would have to clean up.
Thus, this fix improves compile-time performance of these trivial allocas in two ways:
  1. It doesn't have to do the walking and book-keeping for renaming
  2. It does not insert dead phi nodes for them which would have to
     subsequently be cleaned up.
On my favorite testcase from 252.eon, this special case handles 305 out of
356 promoted allocas in the function.  It speeds up the mem2reg pass from 7.5256s
to 1.2505s.  It inserts 677 fewer dead PHI nodes, which speeds up a subsequent
-dce pass from 18.7524s to 2.4806s.
There are still 120 trivially dead PHI nodes being inserted for variables used
in multiple basic blocks, but they are not handled by this patch.
llvm-svn: 8881 
							
						 
						
							2003-10-05 20:54:03 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								a43b8f4b2f 
								
							 
						 
						
							
							
								
								Initial checkin of the LLVM->LLVM transform to support code generators which  
							
							 
							
							... 
							
							
							
							do not support stack unwinding yet
llvm-svn: 8869 
							
						 
						
							2003-10-05 19:14:42 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								5ed281d7d7 
								
							 
						 
						
							
							
								
								simplify-cfg is really a function pass  
							
							 
							
							... 
							
							
							
							llvm-svn: 8868 
							
						 
						
							2003-10-05 19:14:16 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								a5721d3d03 
								
							 
						 
						
							
							
								
								The first PHI node may be null, scan for the first non-null one  
							
							 
							
							... 
							
							
							
							llvm-svn: 8865 
							
						 
						
							2003-10-05 05:34:39 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								203bc011e5 
								
							 
						 
						
							
							
								
								The VersionNumbers vector is only used during PHI placement.  Turn it into an argument, allowing us to get rid of the vector.  
							
							 
							
							... 
							
							
							
							llvm-svn: 8864 
							
						 
						
							2003-10-05 04:33:22 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								7d9692df22 
								
							 
						 
						
							
							
								
								* Update file header comment  
							
							 
							
							... 
							
							
							
							*** Revamp the code which handled unreachable code in the function.  Now the
    code is much more efficient for high-degree basic blocks, such as those
    that occur in the 252.eon SPEC benchmark.
For the interested, the time to promote a SINGLE alloca in _ZN7mrScene4ReadERSi
function used to be > 3.5s.  Now it is < .075s.  The function has a LOT of
allocas in it, so it appeared to be infinite looping, this should make it much
nicer.  :)
llvm-svn: 8863 
							
						 
						
							2003-10-05 04:26:39 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								db1f81bcb5 
								
							 
						 
						
							
							
								
								Simplify the loop a bit  
							
							 
							
							... 
							
							
							
							llvm-svn: 8862 
							
						 
						
							2003-10-05 03:45:44 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								2093012a03 
								
							 
						 
						
							
							
								
								There is no need for separate WriteSets and PhiNodeBlocks lists.  It is just a  
							
							 
							
							... 
							
							
							
							work-list of value definitions.  This allows elimination of the explicit
'iterative' step of the algorithm, and also reuses temporary memory better.
llvm-svn: 8861 
							
						 
						
							2003-10-05 03:39:10 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								9408b1e8b9 
								
							 
						 
						
							
							
								
								The PhiNodes 2D vector is only used during PHI node placement.  It doesn't  
							
							 
							
							... 
							
							
							
							need to be an instance variable!
llvm-svn: 8860 
							
						 
						
							2003-10-05 03:26:25 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								417bc173ee 
								
							 
						 
						
							
							
								
								* Document instance vars better  
							
							 
							
							... 
							
							
							
							* Fuse two parallel loops
* Use a more specific type for AllocaLookup
llvm-svn: 8859 
							
						 
						
							2003-10-05 03:16:07 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								c360f135be 
								
							 
						 
						
							
							
								
								Two small cleanups/speedups:  
							
							 
							
							... 
							
							
							
							* Do not insert a new entry into NewPhiNodes during the rename pass if there are no PHIs in a block.
 * Do not compute WriteSets in parallel
llvm-svn: 8858 
							
						 
						
							2003-10-05 02:37:36 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								c3d57b5923 
								
							 
						 
						
							
							
								
								* Minor cleanups  
							
							 
							
							... 
							
							
							
							* Eliminate the KillList instance variable, instead, just delete loads and
  stores as they are "renamed", and delete allocas when they are done
* Make the 'visited' set an instance variable to avoid passing it on the stack.
llvm-svn: 8857 
							
						 
						
							2003-10-05 01:52:53 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								b9cde76e60 
								
							 
						 
						
							
							
								
								Implement InstCombine/add.ll:test17 & 18  
							
							 
							
							... 
							
							
							
							llvm-svn: 8817 
							
						 
						
							2003-10-02 15:11:26 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								e317856e0e 
								
							 
						 
						
							
							
								
								Use global *_iterator  
							
							 
							
							... 
							
							
							
							llvm-svn: 8703 
							
						 
						
							2003-09-24 22:07:33 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								a940095ae2 
								
							 
						 
						
							
							
								
								Do not use BasicBlock::*_iterator, just use *_iterator itself.  
							
							 
							
							... 
							
							
							
							Isn't updating copy and pasted code a joy
llvm-svn: 8702 
							
						 
						
							2003-09-24 22:06:25 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								295b907cee 
								
							 
						 
						
							
							
								
								Fix bug: IndVarsSimplify/2003-09-23-NotAtTop.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 8689 
							
						 
						
							2003-09-23 20:26:48 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								50ac360a34 
								
							 
						 
						
							
							
								
								Fix bugs in the last change  
							
							 
							
							... 
							
							
							
							llvm-svn: 8667 
							
						 
						
							2003-09-22 23:30:59 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								d6002b8e15 
								
							 
						 
						
							
							
								
								Fix bug: Inline/2003-09-22-PHINodesInNormalInvokeDest.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 8666 
							
						 
						
							2003-09-22 22:35:39 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								0178d262e6 
								
							 
						 
						
							
							
								
								Fix bug: Inline/2003-09-22-PHINodesInExceptionDest.ll  
							
							 
							
							... 
							
							
							
							... by making sure to update PHI nodes to take into consideration the
extra edges we get if we inline a call instruction through an invoke.
llvm-svn: 8664 
							
						 
						
							2003-09-22 21:59:27 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								e051f86a3d 
								
							 
						 
						
							
							
								
								Credits now go into the top-level CREDITS.TXT  
							
							 
							
							... 
							
							
							
							llvm-svn: 8662 
							
						 
						
							2003-09-22 21:57:56 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								4ce9dae5b1 
								
							 
						 
						
							
							
								
								Credits are now in top-level CREDITS.TXT  
							
							 
							
							... 
							
							
							
							llvm-svn: 8661 
							
						 
						
							2003-09-22 21:57:15 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								2caaaba3e9 
								
							 
						 
						
							
							
								
								Squelch warning  
							
							 
							
							... 
							
							
							
							llvm-svn: 8659 
							
						 
						
							2003-09-22 20:33:34 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								c8dfbbbf25 
								
							 
						 
						
							
							
								
								Global variables with APPENDING linkage are very important to keep around!  
							
							 
							
							... 
							
							
							
							llvm-svn: 8632 
							
						 
						
							2003-09-20 19:00:50 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								5dac64f629 
								
							 
						 
						
							
							
								
								Rename Function::getEntryNode -> getEntryBlock  
							
							 
							
							... 
							
							
							
							llvm-svn: 8625 
							
						 
						
							2003-09-20 14:39:18 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								4413e4362c 
								
							 
						 
						
							
							
								
								Minor cleanups, no functional changes  
							
							 
							
							... 
							
							
							
							Rename Function::getEntryNode -> getEntryBlock
llvm-svn: 8623 
							
						 
						
							2003-09-20 14:36:23 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								b6ac976247 
								
							 
						 
						
							
							
								
								Fix a really obvious huge gaping bug, add a comment  
							
							 
							
							... 
							
							
							
							llvm-svn: 8620 
							
						 
						
							2003-09-20 05:24:00 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								0016085602 
								
							 
						 
						
							
							
								
								Expose the TCE pass  
							
							 
							
							... 
							
							
							
							llvm-svn: 8619 
							
						 
						
							2003-09-20 05:14:13 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								2e9014cb1b 
								
							 
						 
						
							
							
								
								New transformation: tail recursion elimination  
							
							 
							
							... 
							
							
							
							llvm-svn: 8618 
							
						 
						
							2003-09-20 05:03:31 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								2da29177ba 
								
							 
						 
						
							
							
								
								Implement InstCombine/and.ll:test(15|16)  
							
							 
							
							... 
							
							
							
							llvm-svn: 8607 
							
						 
						
							2003-09-19 19:05:02 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								ba1cb38c06 
								
							 
						 
						
							
							
								
								pull a large nested conditional out into its own function  
							
							 
							
							... 
							
							
							
							llvm-svn: 8605 
							
						 
						
							2003-09-19 17:17:26 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								dbba189f15 
								
							 
						 
						
							
							
								
								Implement InstCombine/add.ll:test(15|16)  
							
							 
							
							... 
							
							
							
							llvm-svn: 8604 
							
						 
						
							2003-09-19 15:35:42 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								39f398b50d 
								
							 
						 
						
							
							
								
								Fix bug raising allocations whose call sites were invoke instructions.  
							
							 
							
							... 
							
							
							
							Thanks to brg for tracking down the problem so precisely!
llvm-svn: 8568 
							
						 
						
							2003-09-16 19:42:21 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								ec6d7a6df3 
								
							 
						 
						
							
							
								
								This is effectively a complete rewrite of the globaldce algorithm, resulting  
							
							 
							
							... 
							
							
							
							in it being both shorter and more effective.  It no longer depends on the
callgraph, so one FIXME has been fixed.
Additionally, this pass was not able to delete recursive (but dead) functions
if they were pointed to by global variables which were also dead.  In fact
this pass had a lot of problems deleting functions which were only pointed
to by dead globals and other stuff.
Fixing this means that the entire EH library should be stripped away now from
programs that don't use sjlj or exceptions.
llvm-svn: 8567 
							
						 
						
							2003-09-16 19:27:31 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								40b6621b50 
								
							 
						 
						
							
							
								
								Minor cleanups, give credit, remove code that should not be necessary, and  
							
							 
							
							... 
							
							
							
							was a "major hack"  :)
llvm-svn: 8524 
							
						 
						
							2003-09-15 05:43:05 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								6f99eb56c3 
								
							 
						 
						
							
							
								
								Initial checkin of the Setjmp/Longjmp lowering/transformation pass,  
							
							 
							
							... 
							
							
							
							contributed by the masterful Bill Wendling!
llvm-svn: 8520 
							
						 
						
							2003-09-15 04:56:27 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								da3585335b 
								
							 
						 
						
							
							
								
								Ugh, a bug fix needed because of the bug in the CallGraph code  
							
							 
							
							... 
							
							
							
							llvm-svn: 8519 
							
						 
						
							2003-09-15 04:52:00 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								5a6fa29eb3 
								
							 
						 
						
							
							
								
								Fix bug: PruneEH/2003-09-14-ExternalCall.llx  
							
							 
							
							... 
							
							
							
							llvm-svn: 8516 
							
						 
						
							2003-09-15 02:22:50 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								7f89ea75e1 
								
							 
						 
						
							
							
								
								Fix bug: Inline/2003-09-14-InlineValue.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 8514 
							
						 
						
							2003-09-15 02:10:16 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								099ec07a95 
								
							 
						 
						
							
							
								
								Make sure to cannonicalize loops before running indvar simplify  
							
							 
							
							... 
							
							
							
							llvm-svn: 8502 
							
						 
						
							2003-09-12 16:45:01 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								7fdde92b1f 
								
							 
						 
						
							
							
								
								Do not return success after checking only the FIRST USE of a gep instruction.  
							
							 
							
							... 
							
							
							
							Instead, check all uses.
This fixes bug: ScalarRepl/2003-09-12-IncorrectPromote.ll
This also fixes the miscompilation of Ptrdist/bc
llvm-svn: 8493 
							
						 
						
							2003-09-12 16:02:12 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								9a95f2a944 
								
							 
						 
						
							
							
								
								Minor optimization efficiency improvement:  
							
							 
							
							... 
							
							
							
							- Run mem2reg promotion first
  - Only rerun passes if the previous thing changed something
llvm-svn: 8490 
							
						 
						
							2003-09-12 15:36:03 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								cce81be1e1 
								
							 
						 
						
							
							
								
								Simplify code  
							
							 
							
							... 
							
							
							
							Implement InstCombine/mul.ll:test9
llvm-svn: 8488 
							
						 
						
							2003-09-11 22:24:54 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								217ca0bcb9 
								
							 
						 
						
							
							
								
								Apostrophes are only used for possession and quoting.  
							
							 
							
							... 
							
							
							
							llvm-svn: 8473 
							
						 
						
							2003-09-11 16:58:31 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								5d8a12e094 
								
							 
						 
						
							
							
								
								Integrate functionality of the mem2reg pass directly into this pass to make  
							
							 
							
							... 
							
							
							
							the combination more effective
llvm-svn: 8471 
							
						 
						
							2003-09-11 16:45:55 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								bb9d03b9c0 
								
							 
						 
						
							
							
								
								Renamed DominatorTree::Node::getNode() -> getBlock()  
							
							 
							
							... 
							
							
							
							llvm-svn: 8469 
							
						 
						
							2003-09-11 16:26:13 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								9b8d339f6e 
								
							 
						 
						
							
							
								
								Spell `definite' correctly.  
							
							 
							
							... 
							
							
							
							llvm-svn: 8467 
							
						 
						
							2003-09-11 15:32:37 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								250f976eb3 
								
							 
						 
						
							
							
								
								Spell `definitely' correctly.  
							
							 
							
							... 
							
							
							
							llvm-svn: 8466 
							
						 
						
							2003-09-11 15:31:17 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								2158052ac4 
								
							 
						 
						
							
							
								
								Unwind instructions are intrinsically alive, just like returns  
							
							 
							
							... 
							
							
							
							llvm-svn: 8462 
							
						 
						
							2003-09-10 20:38:14 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								10a032abf1 
								
							 
						 
						
							
							
								
								Update for new UnifyFunction... API  
							
							 
							
							... 
							
							
							
							Remove using decl
llvm-svn: 8458 
							
						 
						
							2003-09-10 20:35:33 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								3b30e93e27 
								
							 
						 
						
							
							
								
								Remove #include  
							
							 
							
							... 
							
							
							
							llvm-svn: 8457 
							
						 
						
							2003-09-10 20:35:21 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								f941396cce 
								
							 
						 
						
							
							
								
								Expand the pass to unify all of the unwind blocks as well  
							
							 
							
							... 
							
							
							
							llvm-svn: 8456 
							
						 
						
							2003-09-10 20:34:51 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								216c7b8aed 
								
							 
						 
						
							
							
								
								Fix spell-o's  
							
							 
							
							... 
							
							
							
							llvm-svn: 8431 
							
						 
						
							2003-09-10 05:29:43 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								4e621cd861 
								
							 
						 
						
							
							
								
								Spelling fixes.  I think that "cannonical" is ok, but "canonical" appears to  
							
							 
							
							... 
							
							
							
							be the canonical form for the word
llvm-svn: 8430 
							
						 
						
							2003-09-10 05:24:46 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								36257f049e 
								
							 
						 
						
							
							
								
								Fix up file header  
							
							 
							
							... 
							
							
							
							llvm-svn: 8428 
							
						 
						
							2003-09-10 05:10:34 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								4ace48e0ca 
								
							 
						 
						
							
							
								
								Spell `occurrence' correctly.  
							
							 
							
							... 
							
							
							
							llvm-svn: 8425 
							
						 
						
							2003-09-09 21:54:45 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								04ecefe232 
								
							 
						 
						
							
							
								
								Eliminate support for the llvm.unwind intrinisic, using the Unwind instruction instead  
							
							 
							
							... 
							
							
							
							llvm-svn: 8411 
							
						 
						
							2003-09-08 19:44:26 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								caa12cfa75 
								
							 
						 
						
							
							
								
								Should invokify is always true  
							
							 
							
							... 
							
							
							
							llvm-svn: 8409 
							
						 
						
							2003-09-08 19:00:30 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								9c58cf6d03 
								
							 
						 
						
							
							
								
								Add support for the unwind instruction  
							
							 
							
							... 
							
							
							
							llvm-svn: 8408 
							
						 
						
							2003-09-08 18:54:55 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								01a8391236 
								
							 
						 
						
							
							
								
								Do not hoist volatile loads  
							
							 
							
							... 
							
							
							
							llvm-svn: 8399 
							
						 
						
							2003-09-08 18:17:14 +00:00  
						
					 
				
					
						
							
							
								 
								Brian Gaeke
							
						 
						
							 
							
							
							
							
								
							
							
								6181cac0dc 
								
							 
						 
						
							
							
								
								Correct comments  
							
							 
							
							... 
							
							
							
							Don't include InstLoops.h
Don't export factory functions for these passes
llvm-svn: 8373 
							
						 
						
							2003-09-05 19:43:19 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								f1f7f2c477 
								
							 
						 
						
							
							
								
								Prototype for creator function got moved  
							
							 
							
							... 
							
							
							
							llvm-svn: 8315 
							
						 
						
							2003-09-01 20:45:33 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								ffc2d16f21 
								
							 
						 
						
							
							
								
								Final cleanup: remove dead code  
							
							 
							
							... 
							
							
							
							llvm-svn: 8291 
							
						 
						
							2003-09-01 18:01:36 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								267f20475b 
								
							 
						 
						
							
							
								
								Not only is this a lot smaller, it actually works if there is already a  
							
							 
							
							... 
							
							
							
							function with the right name in the module.
llvm-svn: 8290 
							
						 
						
							2003-09-01 16:53:46 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								5b8addab9b 
								
							 
						 
						
							
							
								
								Dead files  
							
							 
							
							... 
							
							
							
							llvm-svn: 8289 
							
						 
						
							2003-09-01 16:49:57 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								d4a1af7d49 
								
							 
						 
						
							
							
								
								If "These should be used only by the auto-parallelization pass", we might as  
							
							 
							
							... 
							
							
							
							well put them INTO the auto-par pass.
llvm-svn: 8288 
							
						 
						
							2003-09-01 16:49:38 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								685dc1ea98 
								
							 
						 
						
							
							
								
								Moved all of the cilkifier stuff into lib/Transforms/IPO, as it really is not  
							
							 
							
							... 
							
							
							
							support stuff.
llvm-svn: 8287 
							
						 
						
							2003-09-01 16:45:30 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								6c6ba71cea 
								
							 
						 
						
							
							
								
								Minor cleanups  
							
							 
							
							... 
							
							
							
							Do not #include Parallelize.h, it's just a subset of Cilkifier.h
llvm-svn: 8285 
							
						 
						
							2003-09-01 16:42:16 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								8ef1b88aef 
								
							 
						 
						
							
							
								
								Change the RaiseAllocations pass to be a Pass instead of a BasicBlock pass.  
							
							 
							
							... 
							
							
							
							This makes it more efficient: it doesn't have to scan the whole program, so
it performs work proportional to the number of malloc/free calls in the
program, not the size of the program.
llvm-svn: 8280 
							
						 
						
							2003-09-01 03:14:56 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								1c884e18e1 
								
							 
						 
						
							
							
								
								Fix bug: TailDuplicate/2003-08-31-UnreachableBlocks.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 8276 
							
						 
						
							2003-08-31 21:17:44 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								d075cc282b 
								
							 
						 
						
							
							
								
								Heavily refactor code:  
							
							 
							
							... 
							
							
							
							* Separate the policy decisions into a derived class [InlineSimple]
  * Move the inlining mechanics into a base class [Inliner]
  * Change the inliner to be an SCCPass, making it more structured and
    eventually pipelinable with other SCC passes
llvm-svn: 8257 
							
						 
						
							2003-08-31 19:10:30 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								75444c751f 
								
							 
						 
						
							
							
								
								Add accessor function  
							
							 
							
							... 
							
							
							
							llvm-svn: 8253 
							
						 
						
							2003-08-31 16:30:07 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								0a3f8d5dcd 
								
							 
						 
						
							
							
								
								Initial checkin of the -prune-eh pass, a very simple exception handling removal pass  
							
							 
							
							... 
							
							
							
							llvm-svn: 8250 
							
						 
						
							2003-08-31 02:47:32 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								c817458b66 
								
							 
						 
						
							
							
								
								ScalarRepl does not modify the CFG.  Say so!  
							
							 
							
							... 
							
							
							
							llvm-svn: 8243 
							
						 
						
							2003-08-31 00:45:13 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								2887328770 
								
							 
						 
						
							
							
								
								Use new interface, simplifies code  
							
							 
							
							... 
							
							
							
							llvm-svn: 8242 
							
						 
						
							2003-08-31 00:22:27 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								25bc3f86de 
								
							 
						 
						
							
							
								
								Use the new interface, simplifies code  
							
							 
							
							... 
							
							
							
							NOTE that these two files are _BUGGY_ and need to be fixed, just not by me  :)
llvm-svn: 8241 
							
						 
						
							2003-08-31 00:21:59 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								ea27751e4b 
								
							 
						 
						
							
							
								
								Use the new interface, simplifies code  
							
							 
							
							... 
							
							
							
							Delete a bunch of commented out code
llvm-svn: 8240 
							
						 
						
							2003-08-31 00:21:05 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								8e6ac1bf10 
								
							 
						 
						
							
							
								
								Use the new interface, simplifies code  
							
							 
							
							... 
							
							
							
							llvm-svn: 8239 
							
						 
						
							2003-08-31 00:20:36 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								66cc0141b0 
								
							 
						 
						
							
							
								
								Fix bug where we considered function types equivalent even if they had differing numbers of arguments  
							
							 
							
							... 
							
							
							
							llvm-svn: 8178 
							
						 
						
							2003-08-28 16:42:50 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								df741d62de 
								
							 
						 
						
							
							
								
								Fix bug: SCCP/2003-08-26-InvokeHandling.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 8152 
							
						 
						
							2003-08-27 01:08:35 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								be8d6816d0 
								
							 
						 
						
							
							
								
								Remove special casing  
							
							 
							
							... 
							
							
							
							llvm-svn: 8144 
							
						 
						
							2003-08-25 22:34:15 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								4f05103ad2 
								
							 
						 
						
							
							
								
								Fix bug: Linker/2003-08-23-GlobalVarLinking.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 8130 
							
						 
						
							2003-08-24 19:30:20 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								3ba0f88a0a 
								
							 
						 
						
							
							
								
								Implement: Linker/2003-08-24-InheritPtrSize.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 8129 
							
						 
						
							2003-08-24 19:26:42 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								3f5823f131 
								
							 
						 
						
							
							
								
								Implement SimplifyCFG/InvokeEliminate.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 8126 
							
						 
						
							2003-08-24 18:36:16 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								0f98032fd8 
								
							 
						 
						
							
							
								
								rethrow is really the language independent primitive here.  "throw" can be written  
							
							 
							
							... 
							
							
							
							in terms of it and llvm.exc.setcurrent.
Rework the intrinsics.
llvm-svn: 8111 
							
						 
						
							2003-08-24 12:24:11 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								d367d0553e 
								
							 
						 
						
							
							
								
								Inline invoke instructions as well as call instructions  
							
							 
							
							... 
							
							
							
							llvm-svn: 8107 
							
						 
						
							2003-08-24 06:59:28 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								0cc265e6bf 
								
							 
						 
						
							
							
								
								*** Implement inlining of Invoke instructions!  
							
							 
							
							... 
							
							
							
							llvm-svn: 8106 
							
						 
						
							2003-08-24 06:59:16 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								9c5bfd0f80 
								
							 
						 
						
							
							
								
								Big diff for a small change: delete inlined functions if all callees have  
							
							 
							
							... 
							
							
							
							inlined the function.
Implements: Inline/inline_dce.ll
llvm-svn: 8101 
							
						 
						
							2003-08-24 05:03:14 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								fc3fe5cd75 
								
							 
						 
						
							
							
								
								Implement: Inline/cfg_preserve_test.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 8099 
							
						 
						
							2003-08-24 04:06:56 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								c54d608377 
								
							 
						 
						
							
							
								
								Implement SimplifyCFG/2003-08-17-FoldSwitch.ll:test5  
							
							 
							
							... 
							
							
							
							llvm-svn: 8093 
							
						 
						
							2003-08-23 23:18:19 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								f1b1c5ec2f 
								
							 
						 
						
							
							
								
								Fix bug: LowerSwitch/2003-08-23-EmptySwitch.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 8087 
							
						 
						
							2003-08-23 22:54:34 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								02da0ef418 
								
							 
						 
						
							
							
								
								Do not consider any types that exist in the global symbol table!  
							
							 
							
							... 
							
							
							
							llvm-svn: 8084 
							
						 
						
							2003-08-23 21:32:24 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								f38c0483ba 
								
							 
						 
						
							
							
								
								Fix bug: Linker/2003-08-23-RecursiveOpaqueTypeResolve.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 8083 
							
						 
						
							2003-08-23 21:25:54 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								31de50ab44 
								
							 
						 
						
							
							
								
								Implement Linker/2003-08-23-GlobalVarLinking.ll, which should fix 176.gcc  
							
							 
							
							... 
							
							
							
							llvm-svn: 8080 
							
						 
						
							2003-08-23 20:31:10 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								bb4dd7ed34 
								
							 
						 
						
							
							
								
								Fix bug: TailDup/2003-08-23-InvalidatedPointers.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 8078 
							
						 
						
							2003-08-23 20:08:30 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								6fc0ee9901 
								
							 
						 
						
							
							
								
								Fix bug: FunctionResolve/2003-08-23-ArgumentWarning.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 8076 
							
						 
						
							2003-08-23 20:03:05 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								954a6095d7 
								
							 
						 
						
							
							
								
								Fix typeo  
							
							 
							
							... 
							
							
							
							llvm-svn: 8059 
							
						 
						
							2003-08-22 20:16:48 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								1a8a45977a 
								
							 
						 
						
							
							
								
								The process of linking types can cause their addresses to become invalid.  For this reason, we must use TypeHandles!  
							
							 
							
							... 
							
							
							
							llvm-svn: 8057 
							
						 
						
							2003-08-22 19:12:55 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								f872d41f55 
								
							 
						 
						
							
							
								
								Implement Linker/2003-08-20-OpaqueTypeResolve.ll  
							
							 
							
							... 
							
							
							
							Hopefully this will fix the 176.gcc spec test as well.
llvm-svn: 8051 
							
						 
						
							2003-08-22 06:07:12 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								be372b91e1 
								
							 
						 
						
							
							
								
								The word `dependent' has no `a'.  
							
							 
							
							... 
							
							
							
							llvm-svn: 8030 
							
						 
						
							2003-08-21 22:14:26 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								015d98e940 
								
							 
						 
						
							
							
								
								Unless we CANNOT merge the arguments, do so  
							
							 
							
							... 
							
							
							
							llvm-svn: 7999 
							
						 
						
							2003-08-20 23:50:38 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								a34c477b05 
								
							 
						 
						
							
							
								
								Fix grammar, add comment  
							
							 
							
							... 
							
							
							
							llvm-svn: 7967 
							
						 
						
							2003-08-18 22:54:06 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								7eb05a170a 
								
							 
						 
						
							
							
								
								Spell `necessary' correctly.  
							
							 
							
							... 
							
							
							
							llvm-svn: 7944 
							
						 
						
							2003-08-18 14:43:39 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								821deeeffa 
								
							 
						 
						
							
							
								
								Implement folding of switch instructions.  
							
							 
							
							... 
							
							
							
							Implements SimplifyCFG/2003-08-17-FoldSwitch.ll
llvm-svn: 7923 
							
						 
						
							2003-08-17 20:21:14 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								031340a551 
								
							 
						 
						
							
							
								
								Fix bug: SimplifyCFG/2003-08-17-BranchFoldOrdering.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 7921 
							
						 
						
							2003-08-17 19:41:53 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								4b7e3364c7 
								
							 
						 
						
							
							
								
								The fixme is irrelevant: if that happens, the LLVM bytecode is malformed.  
							
							 
							
							... 
							
							
							
							This fixes testcase: SimplifyCFG/2003-08-17-BranchFold.ll
llvm-svn: 7919 
							
						 
						
							2003-08-17 19:34:55 +00:00  
						
					 
				
					
						
							
							
								 
								Brian Gaeke
							
						 
						
							 
							
							
							
							
								
							
							
								8c14ba96ca 
								
							 
						 
						
							
							
								
								Factory methods for function passes now return type FunctionPass *.  
							
							 
							
							... 
							
							
							
							llvm-svn: 7839 
							
						 
						
							2003-08-14 06:09:32 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								cbf0839a03 
								
							 
						 
						
							
							
								
								Fix FIXME by removing FIXME  
							
							 
							
							... 
							
							
							
							llvm-svn: 7832 
							
						 
						
							2003-08-13 22:15:04 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								3ac7c26a1c 
								
							 
						 
						
							
							
								
								Implement instcombine optimizations:  
							
							 
							
							... 
							
							
							
							(A <setcc1> B) logicalop (A <setcc2> B)  -> (A <setcc3> B) or true or false
Where setcc[123] is one of the 6 setcc instructions, and logicalop is one of: And, Or, Xor
llvm-svn: 7828 
							
						 
						
							2003-08-13 20:16:26 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								b8b97505ba 
								
							 
						 
						
							
							
								
								Generalize some of the add tests to allow for reassociation to take place  
							
							 
							
							... 
							
							
							
							llvm-svn: 7825 
							
						 
						
							2003-08-13 19:01:45 +00:00  
						
					 
				
					
						
							
							
								 
								Brian Gaeke
							
						 
						
							 
							
							
							
							
								
							
							
								89207943a1 
								
							 
						 
						
							
							
								
								Factory methods for FunctionPasses now return type FunctionPass *.  
							
							 
							
							... 
							
							
							
							llvm-svn: 7823 
							
						 
						
							2003-08-13 18:18:15 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								8ac196dd3b 
								
							 
						 
						
							
							
								
								Assign arguments different ranks so they get grouped together  
							
							 
							
							... 
							
							
							
							llvm-svn: 7813 
							
						 
						
							2003-08-13 16:16:26 +00:00  
						
					 
				
					
						
							
							
								 
								John Criswell
							
						 
						
							 
							
							
							
							
								
							
							
								35364c8408 
								
							 
						 
						
							
							
								
								Removing the pool allocator from the main CVS tree.  
							
							 
							
							... 
							
							
							
							Use the poolalloc module in CVS from now on.
llvm-svn: 7810 
							
						 
						
							2003-08-13 15:36:15 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								d07283a2ad 
								
							 
						 
						
							
							
								
								Implement InstCombine/2003-08-12-AllocaNonNull.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 7807 
							
						 
						
							2003-08-13 05:38:46 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								c992add9fe 
								
							 
						 
						
							
							
								
								Do not cannonicalize (X != 0) into (cast X to bool)  
							
							 
							
							... 
							
							
							
							llvm-svn: 7806 
							
						 
						
							2003-08-13 05:33:12 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								ede3fe05c5 
								
							 
						 
						
							
							
								
								Change cannonicalization rules: add X,X is represented as multiplies, multiplies  
							
							 
							
							... 
							
							
							
							of a power of two are represented as a shift.
llvm-svn: 7803 
							
						 
						
							2003-08-13 04:18:28 +00:00  
						
					 
				
					
						
							
							
								 
								Brian Gaeke
							
						 
						
							 
							
							
							
							
								
							
							
								709a16a0bc 
								
							 
						 
						
							
							
								
								Give std::map<BasicBlock *, BasicBlock *> the short name BBMap, because  
							
							 
							
							... 
							
							
							
							it's used 7 different times.
Rename `getBackEdges' to `findAndInstrumentBackEdges', for clarity.
Remove some excess whitespace and commented-out code.
Use shorter forms of CallInst ctors.
Do not make `reopt_threshold' visible to the LLVM program, and do not
 pass it to the call to `reoptimizerInitialize'.  Don't pass the
 GlobalVariable representing it to any of our helper methods.
 `reopt_threshold' is an internal parameter of the reoptimizer, which
 InstLoops does not need to know about.
llvm-svn: 7794 
							
						 
						
							2003-08-12 22:00:24 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								deaa0dd71a 
								
							 
						 
						
							
							
								
								Allow pulling logical operations through shifts.  
							
							 
							
							... 
							
							
							
							This implements InstCombine/shift.ll:test14*
llvm-svn: 7793 
							
						 
						
							2003-08-12 21:53:41 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								98b3ecddec 
								
							 
						 
						
							
							
								
								Fix bug: Reassociate/2003-08-12-InfiniteLoop.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 7792 
							
						 
						
							2003-08-12 21:45:24 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								58c7eb60ec 
								
							 
						 
						
							
							
								
								Assign finer grained ranks, make sure to reassociate top-level after reassociating bottom level  
							
							 
							
							... 
							
							
							
							llvm-svn: 7787 
							
						 
						
							2003-08-12 20:14:27 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								01d5639515 
								
							 
						 
						
							
							
								
								Simplify code  
							
							 
							
							... 
							
							
							
							llvm-svn: 7783 
							
						 
						
							2003-08-12 19:17:27 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								812aab7727 
								
							 
						 
						
							
							
								
								Implement testcases InstCombine/or.ll:test16/test17  
							
							 
							
							... 
							
							
							
							llvm-svn: 7782 
							
						 
						
							2003-08-12 19:11:07 +00:00  
						
					 
				
					
						
							
							
								 
								Sumant Kowshik
							
						 
						
							 
							
							
							
							
								
							
							
								46d9b22e90 
								
							 
						 
						
							
							
								
								Bug fix: Some nodes pointed to by globals may not be marked incomplete and need to be tracked to find pool arguments  
							
							 
							
							... 
							
							
							
							llvm-svn: 7763 
							
						 
						
							2003-08-12 00:45:13 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								603e0076c0 
								
							 
						 
						
							
							
								
								Fix handling of 'free' if it has absolutely no prototype  
							
							 
							
							... 
							
							
							
							llvm-svn: 7721 
							
						 
						
							2003-08-11 15:05:08 +00:00  
						
					 
				
					
						
							
							
								 
								John Criswell
							
						 
						
							 
							
							
							
							
								
							
							
								449670a8f7 
								
							 
						 
						
							
							
								
								Fixed a segfault in gccld.  
							
							 
							
							... 
							
							
							
							The original code does not work because the value from WorkList.end() is
invalidated once WorkList.erase() is called.  To ensure proper functionality,
we must ensure that WorkList.erase() is always called before WorkList.end().
llvm-svn: 7673 
							
						 
						
							2003-08-07 14:43:13 +00:00  
						
					 
				
					
						
							
							
								 
								Sumant Kowshik
							
						 
						
							 
							
							
							
							
								
							
							
								0b83080595 
								
							 
						 
						
							
							
								
								Added code for pool allocating only the pool-allocatable data structures in the presence of collapsed nodes + a couple of bug fixes  
							
							 
							
							... 
							
							
							
							llvm-svn: 7662 
							
						 
						
							2003-08-07 05:29:28 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								c592c9f8a3 
								
							 
						 
						
							
							
								
								Remove unnecessary use of NonCopyable  
							
							 
							
							... 
							
							
							
							llvm-svn: 7641 
							
						 
						
							2003-08-06 17:16:24 +00:00  
						
					 
				
					
						
							
							
								 
								Tanya Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								dc3c9a8545 
								
							 
						 
						
							
							
								
								Fixed minor bug in SafeToHoist and made some changes suggested by Chris.  
							
							 
							
							... 
							
							
							
							llvm-svn: 7614 
							
						 
						
							2003-08-05 20:39:02 +00:00  
						
					 
				
					
						
							
							
								 
								Tanya Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								57c03df032 
								
							 
						 
						
							
							
								
								Fixed LICM bug that hoists trapping instructions that are not guaranteed to execute.  
							
							 
							
							... 
							
							
							
							llvm-svn: 7612 
							
						 
						
							2003-08-05 18:45:46 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								adc5a89a3b 
								
							 
						 
						
							
							
								
								Minor changes:  
							
							 
							
							... 
							
							
							
							* Expand most tabs into spaces
  * Move #define DEBUG_TYPE to top of file to avoid warning
llvm-svn: 7611 
							
						 
						
							2003-08-05 18:44:12 +00:00  
						
					 
				
					
						
							
							
								 
								Sumant Kowshik
							
						 
						
							 
							
							
							
							
								
							
							
								0383a65103 
								
							 
						 
						
							
							
								
								Major bug fixes including a memory leak and tracking some exceptional conditions. Also added support for including global and indirect call information in the DS graphs used by the pool allocation  
							
							 
							
							... 
							
							
							
							llvm-svn: 7605 
							
						 
						
							2003-08-05 17:01:54 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								edc8c54e16 
								
							 
						 
						
							
							
								
								Fix bug: SimplifyCFG/2003-08-05-InvokeCrash.ll  
							
							 
							
							... 
							
							
							
							Fix bug: SimplifyCFG/2003-08-05-MishandleInvoke.ll
llvm-svn: 7599 
							
						 
						
							2003-08-05 16:27:44 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								8abcd56c74 
								
							 
						 
						
							
							
								
								DEBUG got moved to Support/Debug.h  
							
							 
							
							... 
							
							
							
							llvm-svn: 7492 
							
						 
						
							2003-08-01 22:15:03 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								ab780dfab5 
								
							 
						 
						
							
							
								
								Instcombine: (A >> c1) << c2 for signed integers  
							
							 
							
							... 
							
							
							
							llvm-svn: 7295 
							
						 
						
							2003-07-24 18:38:56 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								3204d4ed4e 
								
							 
						 
						
							
							
								
								Reorganization of code, no functional changes.  
							
							 
							
							... 
							
							
							
							Now it shoudl be a bit more efficient
llvm-svn: 7292 
							
						 
						
							2003-07-24 17:52:58 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								dfae8be3c9 
								
							 
						 
						
							
							
								
								Allow folding several instructions into casts, which can simplify a lot  
							
							 
							
							... 
							
							
							
							of codes.  For example,
short kernel (short t1) {
  t1 >>= 8; t1 <<= 8;
  return t1;
}
became:
short %kernel(short %t1.1) {
        %tmp.3 = shr short %t1.1, ubyte 8               ; <short> [#uses=1]
        %tmp.5 = cast short %tmp.3 to int               ; <int> [#uses=1]
        %tmp.7 = shl int %tmp.5, ubyte 8                ; <int> [#uses=1]
        %tmp.8 = cast int %tmp.7 to short               ; <short> [#uses=1]
        ret short %tmp.8
}
before, now it becomes:
short %kernel(short %t1.1) {
        %tmp.3 = shr short %t1.1, ubyte 8               ; <short> [#uses=1]
        %tmp.8 = shl short %tmp.3, ubyte 8              ; <short> [#uses=1]
        ret short %tmp.8
}
which will become:
short %kernel(short %t1.1) {
        %tmp.3 = and short %t1.1, 0xFF00
        ret short %tmp.3
}
This implements cast-set.ll:test4 and test5
llvm-svn: 7290 
							
						 
						
							2003-07-24 17:35:25 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								727c03a665 
								
							 
						 
						
							
							
								
								Minor cleanups  
							
							 
							
							... 
							
							
							
							llvm-svn: 7289 
							
						 
						
							2003-07-24 17:31:56 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								e9340228c9 
								
							 
						 
						
							
							
								
								Fix bug: FunctionResolve/2003-07-23-CPR-Reference.ll  
							
							 
							
							... 
							
							
							
							This fixes a long time annoyance which caused prototypes for bzero, bcopy,
bcmp, fputs, and fputs_unlocked to never get deleted.  Grr.
llvm-svn: 7285 
							
						 
						
							2003-07-23 22:03:18 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								bfb1d03159 
								
							 
						 
						
							
							
								
								Add comments  
							
							 
							
							... 
							
							
							
							llvm-svn: 7283 
							
						 
						
							2003-07-23 21:41:57 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								9763859e8d 
								
							 
						 
						
							
							
								
								Remove explicit check for: not (not X) = X, it is already handled because xor is commutative  
							
							 
							
							... 
							
							
							
							- InstCombine: (X & C1) ^ C2 --> (X & C1) | C2 iff (C1&C2) == 0
  - InstCombine: (X | C1) ^ C2 --> (X | C1) & ~C2 iff (C1&C2) == C2
llvm-svn: 7282 
							
						 
						
							2003-07-23 21:37:07 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								33217db4d9 
								
							 
						 
						
							
							
								
								InstCombine: (X ^ C1) & C2 --> (X & C2) iff (C1&C2) == 0  
							
							 
							
							... 
							
							
							
							llvm-svn: 7272 
							
						 
						
							2003-07-23 19:36:21 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								16464b36ff 
								
							 
						 
						
							
							
								
								- InstCombine: (X | C1) & C2 --> X & C2 iff C1 & C1 == 0  
							
							 
							
							... 
							
							
							
							- InstCombine: (X | C) & C --> C
  - InstCombine: (X | C1) & C2 --> (X | (C1&C2)) & C2
llvm-svn: 7269 
							
						 
						
							2003-07-23 19:25:52 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								8f0d15601a 
								
							 
						 
						
							
							
								
								IC: (X & C1) | C2 --> (X | C2) & (C1|C2)  
							
							 
							
							... 
							
							
							
							IC: (X ^ C1) | C2 --> (X | C2) ^ (C1&~C2)
We are now guaranteed that all 'or's will be inside of 'and's, and all 'and's
will be inside of 'xor's, if the second operands are constants.
llvm-svn: 7264 
							
						 
						
							2003-07-23 18:29:44 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								49b47ae565 
								
							 
						 
						
							
							
								
								IC: (X ^ C1) & C2 --> (X & C2) ^ (C1&C2)  
							
							 
							
							... 
							
							
							
							Minor code cleanup
llvm-svn: 7262 
							
						 
						
							2003-07-23 17:57:01 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								cfbce7c880 
								
							 
						 
						
							
							
								
								InstCombine: (X ^ 4) == 8  --> X == 12  
							
							 
							
							... 
							
							
							
							llvm-svn: 7260 
							
						 
						
							2003-07-23 17:26:36 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								d492a0b7b4 
								
							 
						 
						
							
							
								
								IC: (X & 5) == 13 --> false  
							
							 
							
							... 
							
							
							
							IC: (X | 8) == 4  --> false
llvm-svn: 7257 
							
						 
						
							2003-07-23 17:02:11 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								6077c3195f 
								
							 
						 
						
							
							
								
								Simplify code by using ConstantInt::getRawValue instead of checking to see  
							
							 
							
							... 
							
							
							
							whether the constant is signed or unsigned, then casting
llvm-svn: 7252 
							
						 
						
							2003-07-23 15:22:26 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								d78ebd0c6b 
								
							 
						 
						
							
							
								
								Fix bug: TailDup/2003-07-22-InfiniteLoop.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 7243 
							
						 
						
							2003-07-23 03:32:41 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								bdb0ce0605 
								
							 
						 
						
							
							
								
								- InstCombine (cast (xor A, B) to bool) ==> (setne A, B)  
							
							 
							
							... 
							
							
							
							- InstCombine (cast (and X, (1 << size(X)-1)) to bool) ==> x < 0
llvm-svn: 7241 
							
						 
						
							2003-07-22 21:46:59 +00:00  
						
					 
				
					
						
							
							
								 
								John Criswell
							
						 
						
							 
							
							
							
							
								
							
							
								d6dcbc6ce8 
								
							 
						 
						
							
							
								
								Added code that checks to see if a global variable is external before replacing  
							
							 
							
							... 
							
							
							
							a load of the global variable with the variable's constant value.
llvm-svn: 7216 
							
						 
						
							2003-07-21 19:42:57 +00:00  
						
					 
				
					
						
							
							
								 
								Anand Shukla
							
						 
						
							 
							
							
							
							
								
							
							
								1db75a0f7c 
								
							 
						 
						
							
							
								
								Added check for inlinable function  
							
							 
							
							... 
							
							
							
							llvm-svn: 7206 
							
						 
						
							2003-07-18 20:55:26 +00:00  
						
					 
				
					
						
							
							
								 
								Anand Shukla
							
						 
						
							 
							
							
							
							
								
							
							
								89233e1c9a 
								
							 
						 
						
							
							
								
								A pass to combine multiple backedges that go to same target  
							
							 
							
							... 
							
							
							
							llvm-svn: 7201 
							
						 
						
							2003-07-18 16:08:32 +00:00  
						
					 
				
					
						
							
							
								 
								John Criswell
							
						 
						
							 
							
							
							
							
								
							
							
								0643ceafcf 
								
							 
						 
						
							
							
								
								Dinakar and I fixed a bug where we were trying to get the initializer of  
							
							 
							
							... 
							
							
							
							an external constant.  Since external constants don't have initializers, we
were failing on an assert() call in llvm/GlobalVariable.h.
llvm-svn: 7193 
							
						 
						
							2003-07-17 19:06:55 +00:00  
						
					 
				
					
						
							
							
								 
								Vikram S. Adve
							
						 
						
							 
							
							
							
							
								
							
							
								ac83df769b 
								
							 
						 
						
							
							
								
								Trace loads and stores as they happen (stores were being  
							
							 
							
							... 
							
							
							
							remembered in valuesStoredInFunction, but never traced at function return,
and that's too late to be finding the error anyway).
Stores trace both the value and the address being stored to,
but after some experience I think only values should be traced.
The pointer hash table just fills up far too quickly if every
store address were traced.
llvm-svn: 7169 
							
						 
						
							2003-07-11 21:57:43 +00:00  
						
					 
				
					
						
							
							
								 
								Anand Shukla
							
						 
						
							 
							
							
							
							
								
							
							
								b3d794a2c9 
								
							 
						 
						
							
							
								
								Added functionality to instrmentation pass  
							
							 
							
							... 
							
							
							
							llvm-svn: 7161 
							
						 
						
							2003-07-10 21:55:57 +00:00  
						
					 
				
					
						
							
							
								 
								John Criswell
							
						 
						
							 
							
							
							
							
								
							
							
								3ef61afb76 
								
							 
						 
						
							
							
								
								Merged in autoconf branch.  This provides configuration via the autoconf  
							
							 
							
							... 
							
							
							
							system.
llvm-svn: 7014 
							
						 
						
							2003-06-30 21:59:07 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								6e69c28229 
								
							 
						 
						
							
							
								
								Eliminate using declarations, adjust for new DSGraph API  
							
							 
							
							... 
							
							
							
							llvm-svn: 6992 
							
						 
						
							2003-06-30 03:14:44 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								fbfcf01b98 
								
							 
						 
						
							
							
								
								Allow the inlining limit to be controlled from the command line!  
							
							 
							
							... 
							
							
							
							llvm-svn: 6929 
							
						 
						
							2003-06-28 15:57:04 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								eaae578820 
								
							 
						 
						
							
							
								
								Add support to globaldce for deleting dead function prototypes  
							
							 
							
							... 
							
							
							
							llvm-svn: 6918 
							
						 
						
							2003-06-26 05:41:18 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								fd5d323ea9 
								
							 
						 
						
							
							
								
								When internalizing global ctor/dtor list, also mark it constant.  This is gross, but  
							
							 
							
							... 
							
							
							
							until DSA is working all of the time and is totally reliable, we do this.
llvm-svn: 6917 
							
						 
						
							2003-06-26 05:30:40 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								0f1d8a3947 
								
							 
						 
						
							
							
								
								Add support for elimination of load instruction from global constants  
							
							 
							
							... 
							
							
							
							llvm-svn: 6912 
							
						 
						
							2003-06-26 05:06:25 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								35236d8477 
								
							 
						 
						
							
							
								
								Instcombine:  X * -1 -> -X  
							
							 
							
							... 
							
							
							
							llvm-svn: 6904 
							
						 
						
							2003-06-25 17:09:20 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								b396afde26 
								
							 
						 
						
							
							
								
								Fix bug: Mem2Reg/2003-06-26-IterativePromote.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 6901 
							
						 
						
							2003-06-25 14:58:56 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								2ab04f7a41 
								
							 
						 
						
							
							
								
								Add argument to DAE to allow operation on non-internal functions  
							
							 
							
							... 
							
							
							
							llvm-svn: 6895 
							
						 
						
							2003-06-25 04:12:49 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								ee967711e9 
								
							 
						 
						
							
							
								
								Fix bug: ADCE/2003-06-24-BadSuccessor.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 6891 
							
						 
						
							2003-06-24 23:02:45 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								834105502d 
								
							 
						 
						
							
							
								
								Do not mark ALL terminators live if any instruciton in the block is live.  We only  
							
							 
							
							... 
							
							
							
							want to mark it live if it is an unconditional branch.  This fixes bug:
ADCE/2002-05-28-Crash.ll and makes this pass _much_ more useful.
llvm-svn: 6887 
							
						 
						
							2003-06-24 21:49:45 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								7e270580c8 
								
							 
						 
						
							
							
								
								Fix bug: SCCP/2003-06-24-OverdefinedPHIValue.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 6883 
							
						 
						
							2003-06-24 20:29:52 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								f7544873de 
								
							 
						 
						
							
							
								
								Fix bug: TailDup/2003-06-24-Simpleloop.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 6881 
							
						 
						
							2003-06-24 19:48:06 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								55d4bda861 
								
							 
						 
						
							
							
								
								Implement new transforms:  
							
							 
							
							... 
							
							
							
							Replace (cast (sub A, B) to bool) -> (setne A, B)
  Replace (cast (add A, B) to bool) -> (setne A, -B)
llvm-svn: 6873 
							
						 
						
							2003-06-23 21:59:52 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								bf2c46254a 
								
							 
						 
						
							
							
								
								avoid dividing by zero when dealing with zero sized types (like [0 x double])  
							
							 
							
							... 
							
							
							
							llvm-svn: 6862 
							
						 
						
							2003-06-23 17:36:49 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								92963de6fa 
								
							 
						 
						
							
							
								
								Add paranoia checking  
							
							 
							
							... 
							
							
							
							llvm-svn: 6856 
							
						 
						
							2003-06-22 20:46:00 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								268c1392da 
								
							 
						 
						
							
							
								
								Test change  
							
							 
							
							... 
							
							
							
							llvm-svn: 6852 
							
						 
						
							2003-06-22 20:25:27 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								a5434caa5c 
								
							 
						 
						
							
							
								
								Initial checkin of Tail duplication pass.  
							
							 
							
							... 
							
							
							
							llvm-svn: 6846 
							
						 
						
							2003-06-22 20:10:28 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								d0d51605b2 
								
							 
						 
						
							
							
								
								Instcombine cast (getelementptr Ptr, 0, 0, 0) to ... into: cast Ptr to ...  
							
							 
							
							... 
							
							
							
							This fixes type safety problems in a variety of benchmarks that were confusing
DSA.
llvm-svn: 6837 
							
						 
						
							2003-06-21 23:12:02 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								0024dff76f 
								
							 
						 
						
							
							
								
								Fix the build.  :(  
							
							 
							
							... 
							
							
							
							llvm-svn: 6797 
							
						 
						
							2003-06-20 14:36:52 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								d01460495e 
								
							 
						 
						
							
							
								
								Changes to privatize NodeType  
							
							 
							
							... 
							
							
							
							llvm-svn: 6795 
							
						 
						
							2003-06-19 21:15:26 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								970c33abb1 
								
							 
						 
						
							
							
								
								Implement the functionality of InstCombine/call.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 6783 
							
						 
						
							2003-06-19 17:00:31 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								bbe2dab909 
								
							 
						 
						
							
							
								
								Remove a bunch of complicated code.  The functionality is implemented in instcombine instead  
							
							 
							
							... 
							
							
							
							llvm-svn: 6782 
							
						 
						
							2003-06-19 16:59:19 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								5d3c145d4e 
								
							 
						 
						
							
							
								
								Handle arguments passed in through the va_arg area  
							
							 
							
							... 
							
							
							
							llvm-svn: 6769 
							
						 
						
							2003-06-18 16:25:51 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								13bf28c00a 
								
							 
						 
						
							
							
								
								Initial checkin of DAE pass  
							
							 
							
							... 
							
							
							
							llvm-svn: 6759 
							
						 
						
							2003-06-17 22:21:05 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								2a8c301c9f 
								
							 
						 
						
							
							
								
								Don't corrupt memory when removing an instruction from the program, but  
							
							 
							
							... 
							
							
							
							not the worklist
llvm-svn: 6733 
							
						 
						
							2003-06-17 03:57:18 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								dc62f1e021 
								
							 
						 
						
							
							
								
								Fix bug: ADCE/2003-06-11-InvalidCFG.ll  
							
							 
							
							... 
							
							
							
							This was because we were deleting large chunks of functions without an exit block, because the post-dominance
information was not useful.  This broke crafty and twolf.
llvm-svn: 6698 
							
						 
						
							2003-06-16 12:10:45 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								706548fca7 
								
							 
						 
						
							
							
								
								Fix bug: LevelRaise/2003-06-07-EmptyArrayTest.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 6669 
							
						 
						
							2003-06-07 21:45:42 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								bf2be2163b 
								
							 
						 
						
							
							
								
								Fix compilation problem on GCC 2.9x  
							
							 
							
							... 
							
							
							
							llvm-svn: 6667 
							
						 
						
							2003-06-07 20:29:58 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								45789aca97 
								
							 
						 
						
							
							
								
								Fix bug: InstCombine/2003-06-05-BranchInvertInfLoop.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 6630 
							
						 
						
							2003-06-05 20:12:51 +00:00  
						
					 
				
					
						
							
							
								 
								Anand Shukla
							
						 
						
							 
							
							
							
							
								
							
							
								2fd8edd659 
								
							 
						 
						
							
							
								
								Fixed a bug so initialization code is always inserted in main  
							
							 
							
							... 
							
							
							
							llvm-svn: 6622 
							
						 
						
							2003-06-05 06:02:46 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								3cc301834e 
								
							 
						 
						
							
							
								
								Use a constant expr GEP instead of an actual instruction  
							
							 
							
							... 
							
							
							
							llvm-svn: 6620 
							
						 
						
							2003-06-05 04:48:18 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								a485efa141 
								
							 
						 
						
							
							
								
								Make this work with counter > 127  
							
							 
							
							... 
							
							
							
							llvm-svn: 6613 
							
						 
						
							2003-06-04 20:08:47 +00:00  
						
					 
				
					
						
							
							
								 
								Sumant Kowshik
							
						 
						
							 
							
							
							
							
								
							
							
								c318ca1a51 
								
							 
						 
						
							
							
								
								Made changes suggested by Chris  
							
							 
							
							... 
							
							
							
							llvm-svn: 6606 
							
						 
						
							2003-06-04 08:03:57 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								e967b348bf 
								
							 
						 
						
							
							
								
								Clean up previous code.  
							
							 
							
							... 
							
							
							
							Add new combination to turn seteq X, 0 -> not(cast X to bool)
llvm-svn: 6604 
							
						 
						
							2003-06-04 05:10:11 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								9eef8a78b4 
								
							 
						 
						
							
							
								
								Implement combination of boolean not with branch  
							
							 
							
							... 
							
							
							
							llvm-svn: 6599 
							
						 
						
							2003-06-04 04:46:00 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								791ac1a4c8 
								
							 
						 
						
							
							
								
								Implement xform: (X != 0) -> (bool)X  
							
							 
							
							... 
							
							
							
							llvm-svn: 6506 
							
						 
						
							2003-06-01 03:35:25 +00:00  
						
					 
				
					
						
							
							
								 
								Anand Shukla
							
						 
						
							 
							
							
							
							
								
							
							
								03a2134253 
								
							 
						 
						
							
							
								
								Added the #(internal functions) to output  
							
							 
							
							... 
							
							
							
							llvm-svn: 6502 
							
						 
						
							2003-06-01 02:40:49 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								2b1329611b 
								
							 
						 
						
							
							
								
								Fix bug: FunctionResolve/2003-05-31-AllInternalDecls.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 6486 
							
						 
						
							2003-05-31 21:57:06 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								080436820e 
								
							 
						 
						
							
							
								
								Fix bug: FuncResolve/2003-05-31-InternalDecl.ll  
							
							 
							
							... 
							
							
							
							Count resolutions correctly.
llvm-svn: 6482 
							
						 
						
							2003-05-31 21:08:45 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								709c1d469b 
								
							 
						 
						
							
							
								
								Simplify funcresolve a bit more  
							
							 
							
							... 
							
							
							
							llvm-svn: 6480 
							
						 
						
							2003-05-31 20:44:46 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								5ef98de61c 
								
							 
						 
						
							
							
								
								Fix bug: FunctionResolve/2003-05-31-FuncPointerResolve.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 6479 
							
						 
						
							2003-05-31 20:33:31 +00:00  
						
					 
				
					
						
							
							
								 
								Tanya Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								e2d74c1c81 
								
							 
						 
						
							
							
								
								Fixed comment width, changed arg to be const, fixed indentation, removed unnecessary includes.  
							
							 
							
							... 
							
							
							
							llvm-svn: 6476 
							
						 
						
							2003-05-31 20:01:37 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								0078d9c5bb 
								
							 
						 
						
							
							
								
								Okay totally give up on trying to optimize aggregates that cannot be completely  
							
							 
							
							... 
							
							
							
							broken up into their elements.  Too many programs break because of this.
llvm-svn: 6440 
							
						 
						
							2003-05-30 19:22:14 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								d847be0539 
								
							 
						 
						
							
							
								
								add a check that allows the SRoA pass to avoid breaking programs, even if their  
							
							 
							
							... 
							
							
							
							behavior is technically undefined
llvm-svn: 6438 
							
						 
						
							2003-05-30 18:09:57 +00:00  
						
					 
				
					
						
							
							
								 
								Tanya Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								71e56e278c 
								
							 
						 
						
							
							
								
								Added the CloneTrace function which clones traces. It takes a vector of basic blocks, removes  
							
							 
							
							... 
							
							
							
							internal phi nodes, and returns a new vector of basic blocks.
llvm-svn: 6431 
							
						 
						
							2003-05-30 15:50:18 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								38d88c07f4 
								
							 
						 
						
							
							
								
								Fix bug: ScalarRepl/2003-05-30-MultiLevel.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 6428 
							
						 
						
							2003-05-30 05:26:30 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								6e5398d69d 
								
							 
						 
						
							
							
								
								Fix bug: ScalarRepl/2003-05-29-ArrayFail.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 6425 
							
						 
						
							2003-05-30 04:15:41 +00:00  
						
					 
				
					
						
							
							
								 
								Sumant Kowshik
							
						 
						
							 
							
							
							
							
								
							
							
								04c1382291 
								
							 
						 
						
							
							
								
								Added support for function pointers  
							
							 
							
							... 
							
							
							
							llvm-svn: 6420 
							
						 
						
							2003-05-29 22:42:44 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								6c81ebc97d 
								
							 
						 
						
							
							
								
								Add comment  
							
							 
							
							... 
							
							
							
							llvm-svn: 6415 
							
						 
						
							2003-05-29 20:26:30 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								f789f29aaa 
								
							 
						 
						
							
							
								
								Eliminate unnecessary ->get calls that are now automatically handled.  
							
							 
							
							... 
							
							
							
							llvm-svn: 6397 
							
						 
						
							2003-05-29 15:12:27 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								530d4bffbf 
								
							 
						 
						
							
							
								
								* Separate all of the grunt work of inlining out into the Utils library.  
							
							 
							
							... 
							
							
							
							* Make the function inliner _significantly_ smarter.  :)
llvm-svn: 6396 
							
						 
						
							2003-05-29 15:11:31 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								3442844742 
								
							 
						 
						
							
							
								
								Fix bug: Instcombine/2003-05-27-ConstExprCrash.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 6352 
							
						 
						
							2003-05-27 16:40:51 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								c16b210349 
								
							 
						 
						
							
							
								
								* Actually USE the statistic that we made  
							
							 
							
							... 
							
							
							
							* Implement SRoA for arrays
llvm-svn: 6349 
							
						 
						
							2003-05-27 16:09:27 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								fb41a50d15 
								
							 
						 
						
							
							
								
								Implementation of the simple "scalar replacement of aggregates" transformation  
							
							 
							
							... 
							
							
							
							llvm-svn: 6346 
							
						 
						
							2003-05-27 15:45:27 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								196897c424 
								
							 
						 
						
							
							
								
								Fix bug: InstCombine/2003-05-26-CastMiscompile.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 6338 
							
						 
						
							2003-05-26 23:41:32 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								8d0a71aff8 
								
							 
						 
						
							
							
								
								Remove using declarations  
							
							 
							
							... 
							
							
							
							llvm-svn: 6306 
							
						 
						
							2003-05-22 22:00:07 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								224ae025ef 
								
							 
						 
						
							
							
								
								Make the list accept comma separated names  
							
							 
							
							... 
							
							
							
							llvm-svn: 6295 
							
						 
						
							2003-05-22 20:27:13 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								ad44cd840b 
								
							 
						 
						
							
							
								
								* Revert to old behavior of ignoring a module if it doesn't contain a main  
							
							 
							
							... 
							
							
							
							function and no symbols were explicitly marked to be externalized.
* Add new -internalize-public-api-list option that can be used if the symbol
  list is small, and making a new file is annoying.
llvm-svn: 6289 
							
						 
						
							2003-05-22 19:48:00 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								44457bb5ea 
								
							 
						 
						
							
							
								
								Add option to internalize to allow it to read a file to determine which symbols  
							
							 
							
							... 
							
							
							
							should not be internalized
llvm-svn: 6288 
							
						 
						
							2003-05-22 19:34:49 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								471bd76281 
								
							 
						 
						
							
							
								
								Minor cleanups.  
							
							 
							
							... 
							
							
							
							This hunk:
-    } else if (Src->getNumOperands() == 2 && Src->use_size() == 1) {
+    } else if (Src->getNumOperands() == 2) {
Allows GEP folding to be more aggressive, which reduces the number of instructions
and can dramatically speed up BasicAA in some cases.
llvm-svn: 6286 
							
						 
						
							2003-05-22 19:07:21 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								fa58d79cf2 
								
							 
						 
						
							
							
								
								Fix bug: FunctionResolve/2003-05-21-MissingArguments.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 6273 
							
						 
						
							2003-05-21 20:51:52 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								373086db75 
								
							 
						 
						
							
							
								
								Hopefully, the final fix for `[Pp]ropogate'.  
							
							 
							
							... 
							
							
							
							llvm-svn: 6251 
							
						 
						
							2003-05-20 21:01:22 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								e5838c4d72 
								
							 
						 
						
							
							
								
								s/convertable/convertible/g  
							
							 
							
							... 
							
							
							
							llvm-svn: 6248 
							
						 
						
							2003-05-20 18:45:36 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								652e7bf8a8 
								
							 
						 
						
							
							
								
								Fix long standing bug  
							
							 
							
							... 
							
							
							
							llvm-svn: 6232 
							
						 
						
							2003-05-15 18:25:13 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								25fa9718cb 
								
							 
						 
						
							
							
								
								Fix Bug: Linker/2003-05-15-TypeProblem.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 6225 
							
						 
						
							2003-05-15 16:30:55 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								58ea8ff469 
								
							 
						 
						
							
							
								
								Fix major problem with appending linkage changes  
							
							 
							
							... 
							
							
							
							llvm-svn: 6185 
							
						 
						
							2003-05-14 12:11:51 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								f779becc5a 
								
							 
						 
						
							
							
								
								Implement linkage of appending global variables!  
							
							 
							
							... 
							
							
							
							llvm-svn: 6178 
							
						 
						
							2003-05-13 21:33:43 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								0895025b30 
								
							 
						 
						
							
							
								
								Fix bug: LoopPreheaders/2003-05-12-PreheaderExitOfChild.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 6153 
							
						 
						
							2003-05-12 22:04:34 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								b02697210e 
								
							 
						 
						
							
							
								
								Handle va_arg instruction correctly  
							
							 
							
							... 
							
							
							
							llvm-svn: 6030 
							
						 
						
							2003-05-08 02:50:13 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								fce555a981 
								
							 
						 
						
							
							
								
								Don't inline functions that take variable numbers of arguments!  
							
							 
							
							... 
							
							
							
							llvm-svn: 6024 
							
						 
						
							2003-05-08 02:36:43 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								d9bd5a0443 
								
							 
						 
						
							
							
								
								Remove using decl  
							
							 
							
							... 
							
							
							
							llvm-svn: 6023 
							
						 
						
							2003-05-08 02:34:52 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								caa1de250b 
								
							 
						 
						
							
							
								
								Attempt to fix sumant's typesafety issue  
							
							 
							
							... 
							
							
							
							llvm-svn: 5984 
							
						 
						
							2003-05-02 19:32:04 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								3666378690 
								
							 
						 
						
							
							
								
								Fix spelling  
							
							 
							
							... 
							
							
							
							llvm-svn: 5983 
							
						 
						
							2003-05-02 19:26:34 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								df7cc91159 
								
							 
						 
						
							
							
								
								Fix Bug: LowerSwitch/2003-05-01-PHIProblem.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 5979 
							
						 
						
							2003-05-01 22:21:21 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								802c63d964 
								
							 
						 
						
							
							
								
								Fix bug: LevelRaise/2003-05-01-CallCast.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 5975 
							
						 
						
							2003-05-01 21:02:53 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								dd65d863a9 
								
							 
						 
						
							
							
								
								Fix another case where constexprs could cause a crash  
							
							 
							
							... 
							
							
							
							llvm-svn: 5972 
							
						 
						
							2003-04-30 22:34:06 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								9244df60d3 
								
							 
						 
						
							
							
								
								Fix constant folding of constexprs  
							
							 
							
							... 
							
							
							
							llvm-svn: 5971 
							
						 
						
							2003-04-30 22:19:10 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								fcd1fe4f12 
								
							 
						 
						
							
							
								
								Create constant expression casts instead of constant instructions if possible  
							
							 
							
							... 
							
							
							
							llvm-svn: 5968 
							
						 
						
							2003-04-28 01:25:38 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								9810b94850 
								
							 
						 
						
							
							
								
								Fix several bugs:  
							
							 
							
							... 
							
							
							
							* Warnings were emitted all of the time and were really annoying
  * Functions could not be resolved unless they had external linkage.  Linkonce
    linkage was not allowed
  * ConstantPointerRef's were not handled when linking functions
    we now actually handle cast (CPR) to X -> cast (NewCPR) to X
llvm-svn: 5967 
							
						 
						
							2003-04-28 01:23:29 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								4a6c3e79b0 
								
							 
						 
						
							
							
								
								Avoid naming things exactly the same  
							
							 
							
							... 
							
							
							
							llvm-svn: 5966 
							
						 
						
							2003-04-27 22:55:56 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								b68a34eb3f 
								
							 
						 
						
							
							
								
								Fix bug: ADCE/2003-04-25-PHIPostDominateProblem.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 5952 
							
						 
						
							2003-04-25 22:53:27 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								3c98276168 
								
							 
						 
						
							
							
								
								Fix major problem with PHI node traversal: rechecking PHIs should go into  
							
							 
							
							... 
							
							
							
							the visit function.  The worklist is for when their lattice value changes.
llvm-svn: 5927 
							
						 
						
							2003-04-25 03:35:10 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								cccc5c76c8 
								
							 
						 
						
							
							
								
								Minor non-functional changes:  
							
							 
							
							... 
							
							
							
							* Spell propagate right
  * Improve performance of phi node handling
  * Delete using directive
  * Other minor changes
llvm-svn: 5920 
							
						 
						
							2003-04-25 02:50:03 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								3a2fe67908 
								
							 
						 
						
							
							
								
								Fix bug: mem2reg/2003-04-24-MultipleIdenticalSuccessors.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 5919 
							
						 
						
							2003-04-25 00:54:58 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								c1f9206c8c 
								
							 
						 
						
							
							
								
								Make the levelraise pass be well behaved w.r.t the TargetData that the current  
							
							 
							
							... 
							
							
							
							PassMAnager provides.
llvm-svn: 5896 
							
						 
						
							2003-04-24 18:25:27 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								364437e6a3 
								
							 
						 
						
							
							
								
								Fix iterator invalidation problem  
							
							 
							
							... 
							
							
							
							llvm-svn: 5895 
							
						 
						
							2003-04-24 17:52:20 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								b57ed83e28 
								
							 
						 
						
							
							
								
								Make sure that the cloned module retains the type symbol table entries!  
							
							 
							
							... 
							
							
							
							llvm-svn: 5894 
							
						 
						
							2003-04-24 17:15:33 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								0aebf8f80a 
								
							 
						 
						
							
							
								
								Make sure to preserve endiannes and pointer size when cloning modules!  
							
							 
							
							... 
							
							
							
							llvm-svn: 5892 
							
						 
						
							2003-04-24 15:54:40 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								21a8e8a2c9 
								
							 
						 
						
							
							
								
								Fix Bug: Linker/2003-04-23-LinkOnceLost.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 5879 
							
						 
						
							2003-04-23 18:38:39 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								889f620841 
								
							 
						 
						
							
							
								
								Remove unnecesary &*'s  
							
							 
							
							... 
							
							
							
							llvm-svn: 5872 
							
						 
						
							2003-04-23 16:37:45 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								1b094a0f2e 
								
							 
						 
						
							
							
								
								New pass to lower switch instructions to branch instructions  
							
							 
							
							... 
							
							
							
							llvm-svn: 5865 
							
						 
						
							2003-04-23 16:23:59 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								1f45f4e4d8 
								
							 
						 
						
							
							
								
								Minor cleanups  
							
							 
							
							... 
							
							
							
							llvm-svn: 5863 
							
						 
						
							2003-04-23 16:18:14 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								c6ce4dafbe 
								
							 
						 
						
							
							
								
								Add warning when linking modules with disagreeing target properties  
							
							 
							
							... 
							
							
							
							llvm-svn: 5845 
							
						 
						
							2003-04-22 19:13:20 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								d36ad926f2 
								
							 
						 
						
							
							
								
								Preserve the new moduleID field  
							
							 
							
							... 
							
							
							
							llvm-svn: 5835 
							
						 
						
							2003-04-22 18:02:26 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								4522f446c1 
								
							 
						 
						
							
							
								
								Fix bug: 2003-01-30-LinkerRename.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 5828 
							
						 
						
							2003-04-21 21:15:04 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								4adb8536d9 
								
							 
						 
						
							
							
								
								Fix linking a function with qualifiers to a external function declaration:  
							
							 
							
							... 
							
							
							
							Fixed bug: Linker/2003-04-21-Linkage.ll
llvm-svn: 5827 
							
						 
						
							2003-04-21 21:07:05 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								46371cc500 
								
							 
						 
						
							
							
								
								Fix bug where use still existed in dead code  
							
							 
							
							... 
							
							
							
							llvm-svn: 5824 
							
						 
						
							2003-04-21 19:15:26 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								defe5c72e8 
								
							 
						 
						
							
							
								
								Implement: FunctionResolve/2003-04-18-ForwardDeclGlobal.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 5816 
							
						 
						
							2003-04-19 00:15:27 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								5f5d985583 
								
							 
						 
						
							
							
								
								Fix bug: Mem2reg/2003-04-18-DeadBlockProblem.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 5810 
							
						 
						
							2003-04-18 19:25:22 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								424132aa57 
								
							 
						 
						
							
							
								
								Global constants CAN be external  
							
							 
							
							... 
							
							
							
							llvm-svn: 5808 
							
						 
						
							2003-04-18 04:34:29 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								e9f4232a70 
								
							 
						 
						
							
							
								
								Refactor CloneFunction to expose the new CloneBasicBlock function  
							
							 
							
							... 
							
							
							
							llvm-svn: 5806 
							
						 
						
							2003-04-18 03:50:09 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								de6f87ba07 
								
							 
						 
						
							
							
								
								New const_cast instead of c style cast  
							
							 
							
							... 
							
							
							
							llvm-svn: 5805 
							
						 
						
							2003-04-18 03:49:49 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								46b3d30bf6 
								
							 
						 
						
							
							
								
								Change the interface to constant expressions to allow automatic folding  
							
							 
							
							... 
							
							
							
							llvm-svn: 5793 
							
						 
						
							2003-04-16 22:40:51 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								379a8d2d1c 
								
							 
						 
						
							
							
								
								Add new linkage types to support a real frontend  
							
							 
							
							... 
							
							
							
							llvm-svn: 5786 
							
						 
						
							2003-04-16 20:28:45 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								01587d4ad1 
								
							 
						 
						
							
							
								
								Make help message more clear  
							
							 
							
							... 
							
							
							
							llvm-svn: 5775 
							
						 
						
							2003-04-13 03:50:14 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								18b1bf67b2 
								
							 
						 
						
							
							
								
								* Fix bug: Mem2Reg/2003-04-10-DFNotFound.ll  
							
							 
							
							... 
							
							
							
							* Make Mem2Reg assign version numbers now for renamed variables instead of
  .mem2reg suffixes.  This produces what people think of as SSA.
llvm-svn: 5771 
							
						 
						
							2003-04-10 19:41:13 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								9023155621 
								
							 
						 
						
							
							
								
								Initial checkin of PRE on LLVM.  This implementation is still lacking in  
							
							 
							
							... 
							
							
							
							several ways:
 * Load expressions are not PRE'd well.  Alias Analysis should be used to
   get accurate information when computing anticipatibility.
 * The expression collection implementation does not handle PHI nodes properly,
   thus the implementation misses many opportunities to PRE.
 * This code could be sped up quite a bit
Despite these flaws, the code seems to work well, and handles PR's as one
would expect.
llvm-svn: 5759 
							
						 
						
							2003-03-31 19:55:43 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								07f7e5d3b5 
								
							 
						 
						
							
							
								
								* We now preserve the no-critical-edge pass (because we cannot insert critical edges)  
							
							 
							
							... 
							
							
							
							* Small modification to be more efficient
llvm-svn: 5757 
							
						 
						
							2003-03-31 17:30:25 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								c42046f9f1 
								
							 
						 
						
							
							
								
								Move BreakCriticalEdges pass to lib/Transforms/Utils  
							
							 
							
							... 
							
							
							
							llvm-svn: 5754 
							
						 
						
							2003-03-21 21:43:19 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								7fb29e19f0 
								
							 
						 
						
							
							
								
								Add the following instcombine xforms:  
							
							 
							
							... 
							
							
							
							- Implement simple reassociation: (A|c1)|(B|c2) == (A|B)|(c1|c2)
  - (A & C1)+(B & C2) -> (A & C1)|(B & C2) iff C1&C2 == 0
  - (A & C1)^(B & C2) -> (A & C1)|(B & C2) iff C1&C2 == 0
llvm-svn: 5743 
							
						 
						
							2003-03-11 00:12:48 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								934a64cfa4 
								
							 
						 
						
							
							
								
								Implement: -A*-B == A*B  
							
							 
							
							... 
							
							
							
							llvm-svn: 5740 
							
						 
						
							2003-03-10 23:23:04 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								3e327a4334 
								
							 
						 
						
							
							
								
								Add new transformation: // (~A | ~B) == (~(A & B))  
							
							 
							
							... 
							
							
							
							llvm-svn: 5738 
							
						 
						
							2003-03-10 23:13:59 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								bb74e2284a 
								
							 
						 
						
							
							
								
								Generalize not and neg comparison testers to allow constant to be considered not'able and neg'able.  This  
							
							 
							
							... 
							
							
							
							allows optimization of this:
int %test4(int %A, int %B) {
        %a = xor int %A, -1
        %c = and int %a, 5    ; 5 = ~c2
        %d = xor int %c, -1
        ret int %d
}
into this:
int %test4(int %A, int %B) {            ; No predecessors!
        %c.demorgan = or int %A, -6             ; <int> [#uses=1]
        ret int %c.demorgan
}
llvm-svn: 5736 
							
						 
						
							2003-03-10 23:06:50 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								dcf240a649 
								
							 
						 
						
							
							
								
								Generalize (A+c1)+c2 optimization to work with all associative operators  
							
							 
							
							... 
							
							
							
							llvm-svn: 5733 
							
						 
						
							2003-03-10 21:43:22 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								3695257724 
								
							 
						 
						
							
							
								
								Minor change, no functionality diff  
							
							 
							
							... 
							
							
							
							llvm-svn: 5731 
							
						 
						
							2003-03-10 19:20:30 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								e8d6c604bb 
								
							 
						 
						
							
							
								
								Fix bug: (x << 100) wasn't folded to 0, but (x >> 100) was (when x is unsigned)  
							
							 
							
							... 
							
							
							
							Implement new shift optimizations for shifting the result of a shift.
llvm-svn: 5729 
							
						 
						
							2003-03-10 19:16:08 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								1bbb7b6f19 
								
							 
						 
						
							
							
								
								Implement:  (A|B)^B == A & (~B)  
							
							 
							
							... 
							
							
							
							llvm-svn: 5728 
							
						 
						
							2003-03-10 18:24:17 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								569a57f9ff 
								
							 
						 
						
							
							
								
								Fix bug: SimplifyCFG/2003-03-07-DominateProblem.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 5722 
							
						 
						
							2003-03-07 18:13:41 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								235af5673b 
								
							 
						 
						
							
							
								
								Implement %test7 in InstCombine/getelementptr.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 5704 
							
						 
						
							2003-03-05 22:33:14 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								e54d214fcb 
								
							 
						 
						
							
							
								
								Implement CFGSimplify/PhiBlockMerge*.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 5702 
							
						 
						
							2003-03-05 21:36:33 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								31116bafed 
								
							 
						 
						
							
							
								
								Implement testcase CFGSimplify/EqualPHIEdgeBlockMerge.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 5699 
							
						 
						
							2003-03-05 21:01:52 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								0592bb7654 
								
							 
						 
						
							
							
								
								Convert LICM over to use AliasSetTracker.  Besides being nicer, this automatically  
							
							 
							
							... 
							
							
							
							allows LICM to use access sizes to help alias analysis be more precise.
llvm-svn: 5693 
							
						 
						
							2003-03-03 23:32:45 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								50cbb9081a 
								
							 
						 
						
							
							
								
								Eliminate tons of bogus warnings  
							
							 
							
							... 
							
							
							
							llvm-svn: 5686 
							
						 
						
							2003-03-03 19:57:46 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								e27406eb59 
								
							 
						 
						
							
							
								
								Change the mem2reg interface to accept a TargetData argument  
							
							 
							
							... 
							
							
							
							llvm-svn: 5685 
							
						 
						
							2003-03-03 17:25:18 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								e19a9f8ef7 
								
							 
						 
						
							
							
								
								Fix bug: LICM/2003-02-28-PromoteDifferentType.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 5675 
							
						 
						
							2003-02-28 19:21:40 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								49eb0e3026 
								
							 
						 
						
							
							
								
								Fix bug I introduced yesterday :(  
							
							 
							
							... 
							
							
							
							llvm-svn: 5669 
							
						 
						
							2003-02-28 16:54:17 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								32a39c26e0 
								
							 
						 
						
							
							
								
								Fix bug: LICM/2003-02-27-PreheaderExitNodeUpdate.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 5667 
							
						 
						
							2003-02-28 03:07:54 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								f2d9f94a33 
								
							 
						 
						
							
							
								
								Fix bug: 2003-02-27-PreheaderExitNodeUpdate.ll by updating exit node info  
							
							 
							
							... 
							
							
							
							llvm-svn: 5664 
							
						 
						
							2003-02-27 22:48:57 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								10b2b055e8 
								
							 
						 
						
							
							
								
								Add a new assertion to check that stuff is happening right  
							
							 
							
							... 
							
							
							
							Ironically the exit block modification code wasn't updating the exit block
information itself.  Fix this.
llvm-svn: 5659 
							
						 
						
							2003-02-27 22:31:07 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								1ad80e2511 
								
							 
						 
						
							
							
								
								Fix bug: 2003-02-27-StoreSinkPHIs.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 5658 
							
						 
						
							2003-02-27 21:59:36 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								4e2fbfb4c3 
								
							 
						 
						
							
							
								
								* Don't forget to update Loop information!  
							
							 
							
							... 
							
							
							
							* Remove bogus assertion: there may be a single outside predecessor and
    still need a new loop-preheader if the predecessor has multiple
    successors.  See bug: LICM/2003-02-27-PreheaderProblem.ll
llvm-svn: 5655 
							
						 
						
							2003-02-27 21:50:19 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								dbb05b0f09 
								
							 
						 
						
							
							
								
								Replace assertion with a handler.  
							
							 
							
							... 
							
							
							
							llvm-svn: 5653 
							
						 
						
							2003-02-27 20:55:48 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								650096a061 
								
							 
						 
						
							
							
								
								* Significant changes to the preheader insertion pass:  
							
							 
							
							... 
							
							
							
							- Now we perform loop exit-block splitting to ensure exit blocks are
     always dominated by the loop header.
   - We now preserve dominance frontier information
   - This fixes bug: LICM/2003-02-26-LoopExitNotDominated.ll
llvm-svn: 5652 
							
						 
						
							2003-02-27 20:27:08 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								71b82bb494 
								
							 
						 
						
							
							
								
								Convert to work with new AliasAnalysis interface by conservatively assuming all pointers are arbitrarily large accesses  
							
							 
							
							... 
							
							
							
							llvm-svn: 5636 
							
						 
						
							2003-02-26 19:28:57 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								4869f3700e 
								
							 
						 
						
							
							
								
								Rename Instruction::hasSideEffects() -> mayWriteToMemory()  
							
							 
							
							... 
							
							
							
							llvm-svn: 5620 
							
						 
						
							2003-02-24 20:48:32 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								45d67d6ea7 
								
							 
						 
						
							
							
								
								Initial implementation of Loop invariant memory->scalar promotion  
							
							 
							
							... 
							
							
							
							llvm-svn: 5613 
							
						 
						
							2003-02-24 03:52:32 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								26f159046c 
								
							 
						 
						
							
							
								
								Split mem2reg promotion into two parts: a function which does the work, and  
							
							 
							
							... 
							
							
							
							a pass which wraps the function.  This allows other passes to use the functionality
llvm-svn: 5610 
							
						 
						
							2003-02-22 23:57:48 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								04cad6a010 
								
							 
						 
						
							
							
								
								Clean up std namespace references  
							
							 
							
							... 
							
							
							
							llvm-svn: 5608 
							
						 
						
							2003-02-22 22:25:17 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								57c8d99bbd 
								
							 
						 
						
							
							
								
								4 new transformations:  
							
							 
							
							... 
							
							
							
							* X*C + X --> X * (C+1)
  * X + X*C --> X * (C+1)
  * X - X*C --> X * (1-C)
  * X*C - X --> X * (C-1)
llvm-svn: 5592 
							
						 
						
							2003-02-18 19:57:07 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								3082c5a070 
								
							 
						 
						
							
							
								
								Add a variety of new transformations:  
							
							 
							
							... 
							
							
							
							* A & ~A == 0
  * A / (2^c) == A >> c  if unsigned
  * 0 / A == 0
  * 1.0 * A == A
  * A * (2^c) == A << c
  * A ^ ~A == -1
  * A | ~A == -1
  * 0 % X = 0
  * A % (2^c) == A & (c-1) if unsigned
  * A - (A & B) == A & ~B
  * -1 - A == ~A
llvm-svn: 5587 
							
						 
						
							2003-02-18 19:28:33 +00:00  
						
					 
				
					
						
							
							
								 
								Anand Shukla
							
						 
						
							 
							
							
							
							
								
							
							
								f8c09ee341 
								
							 
						 
						
							
							
								
								Changes to runtime framework  
							
							 
							
							... 
							
							
							
							llvm-svn: 5572 
							
						 
						
							2003-02-14 20:41:53 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								04c9274e50 
								
							 
						 
						
							
							
								
								Fix a bug that cause a crash resolving questionable function calls  
							
							 
							
							... 
							
							
							
							llvm-svn: 5567 
							
						 
						
							2003-02-14 19:12:29 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								ade85ecf77 
								
							 
						 
						
							
							
								
								Fix a misunderstanding of the standard associative containers  
							
							 
							
							... 
							
							
							
							llvm-svn: 5565 
							
						 
						
							2003-02-14 05:34:36 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								222e70a9fa 
								
							 
						 
						
							
							
								
								Fix bug: LevelRaise/2003-02-13-CallRaise.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 5562 
							
						 
						
							2003-02-14 03:07:17 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								eaec4be9ea 
								
							 
						 
						
							
							
								
								Revert Anand's patch which broke the build  
							
							 
							
							... 
							
							
							
							llvm-svn: 5525 
							
						 
						
							2003-02-10 15:55:50 +00:00  
						
					 
				
					
						
							
							
								 
								Anand Shukla
							
						 
						
							 
							
							
							
							
								
							
							
								893dfda486 
								
							 
						 
						
							
							
								
								*** empty log message ***  
							
							 
							
							... 
							
							
							
							llvm-svn: 5522 
							
						 
						
							2003-02-09 21:15:36 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								4ecd2d0125 
								
							 
						 
						
							
							
								
								Fix a problem Sumant was running into  
							
							 
							
							... 
							
							
							
							llvm-svn: 5499 
							
						 
						
							2003-02-06 22:03:46 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								82723d73ba 
								
							 
						 
						
							
							
								
								Split public interface out into header file  
							
							 
							
							... 
							
							
							
							llvm-svn: 5472 
							
						 
						
							2003-02-03 19:08:18 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								c44c04af44 
								
							 
						 
						
							
							
								
								Change DSGraph stuff to use hash_(set|map) instead of std::(set|map)  
							
							 
							
							... 
							
							
							
							This change provides a small (3%) but consistent speedup
llvm-svn: 5460 
							
						 
						
							2003-02-01 04:52:08 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								f683599915 
								
							 
						 
						
							
							
								
								Fix typo  
							
							 
							
							... 
							
							
							
							llvm-svn: 5458 
							
						 
						
							2003-02-01 04:50:59 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								68f63f779c 
								
							 
						 
						
							
							
								
								Fix a bug resolving sprintf(...) to sprintf(char*, char*, ...)  
							
							 
							
							... 
							
							
							
							llvm-svn: 5446 
							
						 
						
							2003-01-30 22:38:44 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								47948952dd 
								
							 
						 
						
							
							
								
								Actually print the function _name_ if there is a problem  
							
							 
							
							... 
							
							
							
							llvm-svn: 5443 
							
						 
						
							2003-01-30 21:33:07 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								069c158bc5 
								
							 
						 
						
							
							
								
								* Fix linking of opaque types and their non-opaque versions  
							
							 
							
							... 
							
							
							
							* Fix bug: Linker/2003-01-30-LinkerTypeRename.ll
llvm-svn: 5441 
							
						 
						
							2003-01-30 20:53:43 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								2e65dd3575 
								
							 
						 
						
							
							
								
								Eliminate using decls  
							
							 
							
							... 
							
							
							
							llvm-svn: 5439 
							
						 
						
							2003-01-30 19:53:34 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								b2d9f7dcc9 
								
							 
						 
						
							
							
								
								* Fix function resolution for varargs function to generate incorrect bytecode instead of crashing  
							
							 
							
							... 
							
							
							
							* remove using decls
 CVS: ----------------------------------------------------------------------
llvm-svn: 5437 
							
						 
						
							2003-01-30 18:22:32 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								747f67c96f 
								
							 
						 
						
							
							
								
								Fix levelraise/2003-01-30-ShiftCrash.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 5435 
							
						 
						
							2003-01-30 17:10:41 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								6e07784692 
								
							 
						 
						
							
							
								
								Initial checkin of pool allocation code  
							
							 
							
							... 
							
							
							
							llvm-svn: 5432 
							
						 
						
							2003-01-29 21:12:13 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								d1fd7e958c 
								
							 
						 
						
							
							
								
								Disable construction of pool allocator  
							
							 
							
							... 
							
							
							
							llvm-svn: 5422 
							
						 
						
							2003-01-24 20:13:20 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								6a3586b839 
								
							 
						 
						
							
							
								
								Fix bug: LevelRaise/2003-01-22-GEPProblem.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 5407 
							
						 
						
							2003-01-23 02:39:10 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								6fa1629c47 
								
							 
						 
						
							
							
								
								Fix bug: ADCE/2003-01-22-PredecessorProblem.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 5405 
							
						 
						
							2003-01-23 02:12:18 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								57fd307f6d 
								
							 
						 
						
							
							
								
								Rename include/llvm/Transforms/Instrumentation/TraceFunctions.h to Instrumentation.h  
							
							 
							
							... 
							
							
							
							llvm-svn: 5281 
							
						 
						
							2003-01-14 22:39:29 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								e885b1f596 
								
							 
						 
						
							
							
								
								Fix typeo  
							
							 
							
							... 
							
							
							
							llvm-svn: 5278 
							
						 
						
							2003-01-14 22:34:36 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								580bcaca7d 
								
							 
						 
						
							
							
								
								Remove unused header and function  
							
							 
							
							... 
							
							
							
							llvm-svn: 5277 
							
						 
						
							2003-01-14 22:34:13 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								2f04a0da4e 
								
							 
						 
						
							
							
								
								Clean up #includes  
							
							 
							
							... 
							
							
							
							Move graph.h into local directory
llvm-svn: 5276 
							
						 
						
							2003-01-14 22:33:56 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								049112106e 
								
							 
						 
						
							
							
								
								Fix bug  
							
							 
							
							... 
							
							
							
							llvm-svn: 5264 
							
						 
						
							2003-01-14 19:04:43 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								803c66bc64 
								
							 
						 
						
							
							
								
								Add debugging helper  
							
							 
							
							... 
							
							
							
							llvm-svn: 5235 
							
						 
						
							2003-01-13 00:52:25 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								b9636a70e5 
								
							 
						 
						
							
							
								
								Make sure to handle %'s in strings correctly so that the names of BB's and functions are actually printed!  
							
							 
							
							... 
							
							
							
							llvm-svn: 5234 
							
						 
						
							2003-01-13 00:52:14 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								661841c49b 
								
							 
						 
						
							
							
								
								Fix references to functions  
							
							 
							
							... 
							
							
							
							llvm-svn: 5222 
							
						 
						
							2003-01-13 00:27:23 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								3aa7767352 
								
							 
						 
						
							
							
								
								Fix a huge performance problem in reassociate by introducing a  
							
							 
							
							... 
							
							
							
							rank map cache for instruction ranks
llvm-svn: 5030 
							
						 
						
							2002-12-15 03:56:00 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								f96c8befe0 
								
							 
						 
						
							
							
								
								Minor changes:  
							
							 
							
							... 
							
							
							
							* Reword comment to make more clear
  * Don't print out BB's after modification made
  * Don't delete and new an instruction when we need to move something, just move it.
llvm-svn: 5029 
							
						 
						
							2002-12-15 03:49:50 +00:00  
						
					 
				
					
						
							
							
								 
								Vikram S. Adve
							
						 
						
							 
							
							
							
							
								
							
							
								d9676ed983 
								
							 
						 
						
							
							
								
								External routines used to identify Cilk operations inserted by the  
							
							 
							
							... 
							
							
							
							parallelization pass.
llvm-svn: 4965 
							
						 
						
							2002-12-10 13:08:48 +00:00  
						
					 
				
					
						
							
							
								 
								Vikram S. Adve
							
						 
						
							 
							
							
							
							
								
							
							
								c864ab1e33 
								
							 
						 
						
							
							
								
								This file implements the function DemoteRegToStack(), which takes a  
							
							 
							
							... 
							
							
							
							virtual register computed by an Instruction& X and replaces it with
a slot in the stack frame, allocated via alloca.
llvm-svn: 4964 
							
						 
						
							2002-12-10 13:07:58 +00:00  
						
					 
				
					
						
							
							
								 
								Vikram S. Adve
							
						 
						
							 
							
							
							
							
								
							
							
								9a672d17ae 
								
							 
						 
						
							
							
								
								This file implements a pass that automatically parallelizes a program,  
							
							 
							
							... 
							
							
							
							using the Cilk multi-threaded runtime system to execute parallel code.
The current version inserts too many sync() operations in the program
because it does not attempt to optimize their placement.
llvm-svn: 4962 
							
						 
						
							2002-12-10 00:43:34 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								1ee7f8e6bb 
								
							 
						 
						
							
							
								
								Fix bug that was bugging bugpoint  
							
							 
							
							... 
							
							
							
							llvm-svn: 4953 
							
						 
						
							2002-12-07 21:27:16 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								688ac5b723 
								
							 
						 
						
							
							
								
								Remove dead code  
							
							 
							
							... 
							
							
							
							llvm-svn: 4952 
							
						 
						
							2002-12-07 18:42:13 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								c6509f487b 
								
							 
						 
						
							
							
								
								Fix bug: 2002-12-05-MissedConstProp.ll pointed out by Casey Carter  
							
							 
							
							... 
							
							
							
							llvm-svn: 4935 
							
						 
						
							2002-12-05 22:41:53 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								f4c0811faa 
								
							 
						 
						
							
							
								
								Fix big bug introduced with symbol table changes  
							
							 
							
							... 
							
							
							
							llvm-svn: 4885 
							
						 
						
							2002-12-03 18:32:30 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								e4dbb1af42 
								
							 
						 
						
							
							
								
								Initial checkin of Module cloning support stuff  
							
							 
							
							... 
							
							
							
							llvm-svn: 4788 
							
						 
						
							2002-11-20 20:47:41 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								8016a16ed0 
								
							 
						 
						
							
							
								
								Fix symbol table problem  
							
							 
							
							... 
							
							
							
							llvm-svn: 4785 
							
						 
						
							2002-11-20 19:32:43 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								98cf1f5d64 
								
							 
						 
						
							
							
								
								- Eliminated the deferred symbol table stuff in Module & Function, it really  
							
							 
							
							... 
							
							
							
							wasn't an optimization and it was causing lots of bugs.
llvm-svn: 4779 
							
						 
						
							2002-11-20 18:36:02 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								7c6d9d9eac 
								
							 
						 
						
							
							
								
								Fix minor bugs  
							
							 
							
							... 
							
							
							
							llvm-svn: 4778 
							
						 
						
							2002-11-20 18:32:31 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								84dd0f4767 
								
							 
						 
						
							
							
								
								Remove unneccesary #include  
							
							 
							
							... 
							
							
							
							llvm-svn: 4772 
							
						 
						
							2002-11-19 23:12:53 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								fb311d203a 
								
							 
						 
						
							
							
								
								Implement the CloneFunction function  
							
							 
							
							... 
							
							
							
							llvm-svn: 4771 
							
						 
						
							2002-11-19 23:12:22 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								c362618f2a 
								
							 
						 
						
							
							
								
								Minor changes to cloning interface  
							
							 
							
							... 
							
							
							
							llvm-svn: 4770 
							
						 
						
							2002-11-19 22:54:01 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								8bce9886c3 
								
							 
						 
						
							
							
								
								Fix two fixmes: integrate with inlining, and document  
							
							 
							
							... 
							
							
							
							llvm-svn: 4769 
							
						 
						
							2002-11-19 22:04:49 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								b1120055b9 
								
							 
						 
						
							
							
								
								Rework inline pass to use cloning infrastructure to do the dirty work  
							
							 
							
							... 
							
							
							
							llvm-svn: 4766 
							
						 
						
							2002-11-19 21:54:07 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								1666751257 
								
							 
						 
						
							
							
								
								Start using the new function cloning header  
							
							 
							
							... 
							
							
							
							llvm-svn: 4764 
							
						 
						
							2002-11-19 20:59:41 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								d06467db62 
								
							 
						 
						
							
							
								
								Move MutatStructTypes.h out of IPO  
							
							 
							
							... 
							
							
							
							llvm-svn: 4762 
							
						 
						
							2002-11-19 20:49:40 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								fb8ca4a899 
								
							 
						 
						
							
							
								
								Rename CloneFunction.h to Cloning.h  
							
							 
							
							... 
							
							
							
							llvm-svn: 4760 
							
						 
						
							2002-11-19 20:08:24 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								58f9002b4a 
								
							 
						 
						
							
							
								
								Move the function extractor pass from tools/extract into lib/Xform/IPO  
							
							 
							
							... 
							
							
							
							llvm-svn: 4759 
							
						 
						
							2002-11-19 18:42:59 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								7a3c0671da 
								
							 
						 
						
							
							
								
								Fix bug: 2002-11-13-PointerFunction.ll  
							
							 
							
							... 
							
							
							
							This should fix codegen on vortex to work much better
llvm-svn: 4704 
							
						 
						
							2002-11-13 06:54:20 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								52b8fc0c35 
								
							 
						 
						
							
							
								
								Fix testcase: FunctionResolve/2002-11-09-ExternFn.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 4668 
							
						 
						
							2002-11-10 03:36:55 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								a2620ac156 
								
							 
						 
						
							
							
								
								Fix warning  
							
							 
							
							... 
							
							
							
							llvm-svn: 4649 
							
						 
						
							2002-11-09 00:49:43 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								0da31d6648 
								
							 
						 
						
							
							
								
								Fix spelling error  
							
							 
							
							... 
							
							
							
							llvm-svn: 4645 
							
						 
						
							2002-11-08 23:18:37 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								17069b342a 
								
							 
						 
						
							
							
								
								Use the new getMainFunction() method to efficiently locate main  
							
							 
							
							... 
							
							
							
							llvm-svn: 4630 
							
						 
						
							2002-11-08 20:34:21 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								5997c3d866 
								
							 
						 
						
							
							
								
								Fix bug: FunctionResolve/2002-11-07-RetMismatch.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 4618 
							
						 
						
							2002-11-08 00:38:20 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								5d606a09ff 
								
							 
						 
						
							
							
								
								Instcombine this away:  
							
							 
							
							... 
							
							
							
							%A = getelementptr [4 x int]* %M, long 0, long 0
        %B = getelementptr int* %A, long 2
llvm-svn: 4536 
							
						 
						
							2002-11-04 16:43:32 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								1085bdf49f 
								
							 
						 
						
							
							
								
								Add a transformation to turn:  
							
							 
							
							... 
							
							
							
							malloc Ty, C
int
  malloc [C x Ty], 1
llvm-svn: 4534 
							
						 
						
							2002-11-04 16:18:53 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								0544dadbee 
								
							 
						 
						
							
							
								
								Ack: Fix bug in previous checkin.  
							
							 
							
							... 
							
							
							
							llvm-svn: 4526 
							
						 
						
							2002-11-04 05:50:42 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								4262f815b5 
								
							 
						 
						
							
							
								
								Be more generous about level raising constant expressions don't force each  
							
							 
							
							... 
							
							
							
							constant to one particular type.
llvm-svn: 4525 
							
						 
						
							2002-11-04 05:46:37 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								669c6cf459 
								
							 
						 
						
							
							
								
								Make sure to _delete_ memory allocated by worklists  
							
							 
							
							... 
							
							
							
							llvm-svn: 4523 
							
						 
						
							2002-11-04 02:54:22 +00:00  
						
					 
				
					
						
							
							
								 
								Anand Shukla
							
						 
						
							 
							
							
							
							
								
							
							
								320febba68 
								
							 
						 
						
							
							
								
								code to lightly instrument at branches  
							
							 
							
							... 
							
							
							
							llvm-svn: 4511 
							
						 
						
							2002-11-03 01:45:20 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								36c05c8f69 
								
							 
						 
						
							
							
								
								Make sure to include name information if we have it  
							
							 
							
							... 
							
							
							
							llvm-svn: 4481 
							
						 
						
							2002-11-01 04:49:06 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								8fdf75cde5 
								
							 
						 
						
							
							
								
								Fixes to the reassociate pass to make it respect dominance properties  
							
							 
							
							... 
							
							
							
							Huge thanks go to Casey Carter for writing this fix, reassociate is now
reoperational!
llvm-svn: 4471 
							
						 
						
							2002-10-31 17:12:59 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								12764c85e8 
								
							 
						 
						
							
							
								
								BreakCriticalEdges should update dominance frontier information as well as  
							
							 
							
							... 
							
							
							
							other dominance stuff.  Patch contributed by Casey Carter
llvm-svn: 4457 
							
						 
						
							2002-10-31 02:44:36 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								632df28deb 
								
							 
						 
						
							
							
								
								Fix spelling of `propagate'.  
							
							 
							
							... 
							
							
							
							llvm-svn: 4423 
							
						 
						
							2002-10-29 23:06:16 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								5ae3bd630d 
								
							 
						 
						
							
							
								
								Ensure definate initialization  
							
							 
							
							... 
							
							
							
							llvm-svn: 4263 
							
						 
						
							2002-10-22 23:34:11 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								820d971233 
								
							 
						 
						
							
							
								
								- Rename AnalysisUsage::preservesAll to getPreservesAll & preservesCFG to  
							
							 
							
							... 
							
							
							
							setPreservesCFG to be less confusing.
llvm-svn: 4255 
							
						 
						
							2002-10-21 20:00:28 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								26783a5be5 
								
							 
						 
						
							
							
								
								* Apparently string::find doesn't work right on our sun boxes.  Work around this.  
							
							 
							
							... 
							
							
							
							llvm-svn: 4219 
							
						 
						
							2002-10-17 16:22:08 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								3ff5457b32 
								
							 
						 
						
							
							
								
								Really disable pool allocator  
							
							 
							
							... 
							
							
							
							llvm-svn: 4216 
							
						 
						
							2002-10-17 04:57:09 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								149376dee5 
								
							 
						 
						
							
							
								
								- Change Function's so that their argument list is populated when they are  
							
							 
							
							... 
							
							
							
							constructed.  Before, external functions would have an empty argument list,
    now a Function ALWAYS has a populated argument list.
llvm-svn: 4149 
							
						 
						
							2002-10-13 20:57:00 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								69ce8674b5 
								
							 
						 
						
							
							
								
								- Rename Instruction::First*Op to *OpsBegin, and Num*Ops to *OpsEnd to  
							
							 
							
							... 
							
							
							
							reflect the fact that it's a range being defined.
llvm-svn: 4147 
							
						 
						
							2002-10-13 19:39:16 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								5f9f4e3aac 
								
							 
						 
						
							
							
								
								Account for global variables resolved more accurately.  
							
							 
							
							... 
							
							
							
							llvm-svn: 4143 
							
						 
						
							2002-10-13 17:30:30 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								88dbc4dbe9 
								
							 
						 
						
							
							
								
								Use methods that are more explanatory  
							
							 
							
							... 
							
							
							
							llvm-svn: 4142 
							
						 
						
							2002-10-13 17:12:47 +00:00  
						
					 
				
					
						
							
							
								 
								Anand Shukla
							
						 
						
							 
							
							
							
							
								
							
							
								12b05f3880 
								
							 
						 
						
							
							
								
								Changed to external global var  
							
							 
							
							... 
							
							
							
							llvm-svn: 4120 
							
						 
						
							2002-10-12 20:33:47 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								1a535e18cd 
								
							 
						 
						
							
							
								
								Stop using DataStructureGraph.h  
							
							 
							
							... 
							
							
							
							llvm-svn: 4106 
							
						 
						
							2002-10-10 20:33:46 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								eac4dcd0bd 
								
							 
						 
						
							
							
								
								- Dramatically simplify the ConstantMerge code now that  
							
							 
							
							... 
							
							
							
							Value::replaceAllUsesWith works with constants correctly.
llvm-svn: 4104 
							
						 
						
							2002-10-09 23:16:04 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								013eca003a 
								
							 
						 
						
							
							
								
								Almost a complete rewrite of FunctionResolution to now resolve functions  
							
							 
							
							... 
							
							
							
							and global variables.
This fixes bug: FuncResolve/2002-08-19-ResolveGlobalVarsEasier.ll
And bug: SingleSource/UnitTests/2002-10-09-ArrayResolution.c
Note that this does not fix bug:
FunctionResolve/2002-08-19-ResolveGlobalVars.ll because replaceAllUsesWith
breaks when a constantexpr is pointing to the thing being replaced.  This
is more of an infrastructure problem than anything.
llvm-svn: 4099 
							
						 
						
							2002-10-09 21:10:06 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								a4e2653cd7 
								
							 
						 
						
							
							
								
								- Rename MTy to FTy (no methods exist anymore)  
							
							 
							
							... 
							
							
							
							- Fix bug: LevelRaise/2002-10-08-VarArgCallInfLoop.ll
llvm-svn: 4088 
							
						 
						
							2002-10-09 00:16:00 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								a185db3d72 
								
							 
						 
						
							
							
								
								- Fix bug: LevelRaise/2002-10-08-VarArgCall.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 4083 
							
						 
						
							2002-10-08 22:19:25 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								b7368500dc 
								
							 
						 
						
							
							
								
								- Fix bug: cee/2002-10-07-NoImmediateDominator.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 4081 
							
						 
						
							2002-10-08 21:53:51 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								caf5b504a3 
								
							 
						 
						
							
							
								
								Changes to support PHINode::removeIncoming changes  
							
							 
							
							... 
							
							
							
							llvm-svn: 4080 
							
						 
						
							2002-10-08 21:36:34 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								a704ac8a66 
								
							 
						 
						
							
							
								
								Changes to support PHINode::removeIncoming changes  
							
							 
							
							... 
							
							
							
							llvm-svn: 4079 
							
						 
						
							2002-10-08 21:36:33 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								736709feda 
								
							 
						 
						
							
							
								
								- Checkin LARGE number of Changes to CEE pass that will make it much more  
							
							 
							
							... 
							
							
							
							powerful, but that are largely disabled.  The basic idea here is that it
    is trying to forward branches across basic blocks that have PHI nodes in
    it, which are crucial to be able to handle cases like whet.ll.
    Unfortunately we are not updating SSA correctly, causing sim.c to die, and I
    don't have time to fix the regression now, so I must disable the
    functionality.
llvm-svn: 4077 
							
						 
						
							2002-10-08 21:34:15 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								5ac72defc9 
								
							 
						 
						
							
							
								
								Expose isCriticalEdge & SplitCriticalEdge methods from crit-edges pass  
							
							 
							
							... 
							
							
							
							llvm-svn: 4075 
							
						 
						
							2002-10-08 21:06:27 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								394617f38b 
								
							 
						 
						
							
							
								
								It is illegal for PHI nodes to have zero values, delete the code to handle them  
							
							 
							
							... 
							
							
							
							llvm-svn: 4071 
							
						 
						
							2002-10-08 17:07:39 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								2e0fb39d87 
								
							 
						 
						
							
							
								
								Fold ashr -1, X into -1  
							
							 
							
							... 
							
							
							
							llvm-svn: 4070 
							
						 
						
							2002-10-08 16:16:40 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								68f21bcb1b 
								
							 
						 
						
							
							
								
								Non-functionality change just to make it more clear what is going on  
							
							 
							
							... 
							
							
							
							llvm-svn: 4060 
							
						 
						
							2002-10-07 18:34:32 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								0f5346d743 
								
							 
						 
						
							
							
								
								Fix bug: 2002-10-02-SignExtensionProblem.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 4017 
							
						 
						
							2002-10-02 18:53:14 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								c2996d9a8b 
								
							 
						 
						
							
							
								
								Changes to work with Statistics rework  
							
							 
							
							... 
							
							
							
							* Renamed StatisticReporter.h/cpp to Statistic.h/cpp
    * Broke constructor to take two const char * arguments instead of one, so
      that indendation can be taken care of automatically.
    * Sort the list by pass name when printing
    * Make sure to print all statistics as a group, instead of randomly when
      the statistics dtors are called.
    * Updated ProgrammersManual with new semantics.
llvm-svn: 4004 
							
						 
						
							2002-10-01 22:40:31 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								bf3a099a62 
								
							 
						 
						
							
							
								
								Updates to work with recent Statistic's changes:  
							
							 
							
							... 
							
							
							
							* Renamed StatisticReporter.h/cpp to Statistic.h/cpp
    * Broke constructor to take two const char * arguments instead of one, so
      that indendation can be taken care of automatically.
    * Sort the list by pass name when printing
    * Make sure to print all statistics as a group, instead of randomly when
      the statistics dtors are called.
    * Updated ProgrammersManual with new semantics.
llvm-svn: 4002 
							
						 
						
							2002-10-01 22:38:41 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								3cf3782bc0 
								
							 
						 
						
							
							
								
								Updates to work with recent Statistic's changes:  
							
							 
							
							... 
							
							
							
							* Renamed StatisticReporter.h/cpp to Statistic.h/cpp
    * Broke constructor to take two const char * arguments instead of one, so
      that indendation can be taken care of automatically.
    * Sort the list by pass name when printing
    * Make sure to print all statistics as a group, instead of randomly when
      the statistics dtors are called.
    * Updated ProgrammersManual with new semantics.
llvm-svn: 4001 
							
						 
						
							2002-10-01 22:38:37 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								f242bec91b 
								
							 
						 
						
							
							
								
								Build subdirs in parallel  
							
							 
							
							... 
							
							
							
							llvm-svn: 4000 
							
						 
						
							2002-10-01 22:36:35 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								05e86302f4 
								
							 
						 
						
							
							
								
								Fix bug in LICM that caused the previous big win. :(  
							
							 
							
							... 
							
							
							
							llvm-svn: 3980 
							
						 
						
							2002-09-29 22:26:07 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								6443769b34 
								
							 
						 
						
							
							
								
								Hoist the contents of Loops in depth first order in the dominator tree,  
							
							 
							
							... 
							
							
							
							rather than in random order.  This causes LICM to be DRAMATICALLY more
effective. For example, on bzip2.c, it is able to hoist 302 loads and
2380 total instructions, as opposed to 44/338 before.  This  obviously
makes other transformations much more powerful as well!
llvm-svn: 3978 
							
						 
						
							2002-09-29 21:46:09 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								03a9e15a9f 
								
							 
						 
						
							
							
								
								Fix major bugs in dominator set & tree information updating  
							
							 
							
							... 
							
							
							
							llvm-svn: 3975 
							
						 
						
							2002-09-29 21:41:38 +00:00  
						
					 
				
					
						
							
							
								 
								Vikram S. Adve
							
						 
						
							 
							
							
							
							
								
							
							
								be55f2dd2c 
								
							 
						 
						
							
							
								
								Convert DIRS to PARALLEL_DIRS.  They can be built independently.  
							
							 
							
							... 
							
							
							
							llvm-svn: 3972 
							
						 
						
							2002-09-29 11:52:14 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								d57f3f5073 
								
							 
						 
						
							
							
								
								- Further cleanups of LICM pass, remove extra work from previous implementation  
							
							 
							
							... 
							
							
							
							- Do not clone instructions then insert clone outside of loop.  Just move them.
llvm-svn: 3951 
							
						 
						
							2002-09-26 19:40:25 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								f64f2d3fb3 
								
							 
						 
						
							
							
								
								Improve comments, doxygenize more  
							
							 
							
							... 
							
							
							
							llvm-svn: 3950 
							
						 
						
							2002-09-26 16:52:07 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								718b221ff8 
								
							 
						 
						
							
							
								
								Clean up LICM significantly now that it is guaranteed to have loop preheaders  
							
							 
							
							... 
							
							
							
							llvm-svn: 3947 
							
						 
						
							2002-09-26 16:38:03 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								ca056914c6 
								
							 
						 
						
							
							
								
								Change pass name to something sane  
							
							 
							
							... 
							
							
							
							llvm-svn: 3946 
							
						 
						
							2002-09-26 16:37:37 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								d771fdfd75 
								
							 
						 
						
							
							
								
								Loop invariant code motion now depends on the LoopPreheader pass.  Dead code  
							
							 
							
							... 
							
							
							
							has not yet been removed.
llvm-svn: 3945 
							
						 
						
							2002-09-26 16:19:31 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								bedbd6bc16 
								
							 
						 
						
							
							
								
								- Cleanup break-crit-edges pass by making SplitCriticalEdge a member method.  
							
							 
							
							... 
							
							
							
							- break-crit-edges pass does not invalidate loop-preheader pass.
llvm-svn: 3944 
							
						 
						
							2002-09-26 16:18:51 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								61992f66d8 
								
							 
						 
						
							
							
								
								Checkin new loop-preheader insertion pass.  
							
							 
							
							... 
							
							
							
							llvm-svn: 3942 
							
						 
						
							2002-09-26 16:17:31 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								870a4a5bb4 
								
							 
						 
						
							
							
								
								Converted SimpleStructMutation to take TargetData as a required pass.  
							
							 
							
							... 
							
							
							
							llvm-svn: 3932 
							
						 
						
							2002-09-26 00:17:21 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								3cab9f0396 
								
							 
						 
						
							
							
								
								Change LowerAllocations pass to 'require' TargetData instead of it being  
							
							 
							
							... 
							
							
							
							passed in.
llvm-svn: 3929 
							
						 
						
							2002-09-25 23:47:47 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								b408154f5f 
								
							 
						 
						
							
							
								
								- Fix bug: Mem2Reg/2002-05-01-ShouldNotPromoteThisAlloca.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 3917 
							
						 
						
							2002-09-24 21:19:41 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								4357e54760 
								
							 
						 
						
							
							
								
								Eliminate extraneous #include  
							
							 
							
							... 
							
							
							
							llvm-svn: 3916 
							
						 
						
							2002-09-24 21:18:40 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								d6dcd8ec32 
								
							 
						 
						
							
							
								
								Fix bug: SimplifyCFG/2002-09-24-PHIAssertion.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 3913 
							
						 
						
							2002-09-24 16:09:17 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								c05ad96803 
								
							 
						 
						
							
							
								
								- Do not expose Critical Edge breaking mechanics outside the BCE pass, thus  
							
							 
							
							... 
							
							
							
							removing it from Transforms/Local.h and from Transforms/Utils/*
llvm-svn: 3911 
							
						 
						
							2002-09-24 15:52:01 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								75f80bd0b6 
								
							 
						 
						
							
							
								
								- Do not expose Critical Edge breaking mechanics outside the BCE pass, thus  
							
							 
							
							... 
							
							
							
							removing it from Transforms/Local.h and from Transforms/Utils/*
llvm-svn: 3910 
							
						 
						
							2002-09-24 15:51:56 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								b4e7e22be3 
								
							 
						 
						
							
							
								
								Correlated Exprs pass now requires BCE pass instead of doing it manually  
							
							 
							
							... 
							
							
							
							llvm-svn: 3908 
							
						 
						
							2002-09-24 15:43:56 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								4bec665b09 
								
							 
						 
						
							
							
								
								- Expose passinfo from BreakCriticalEdges pass so that it may be "Required"  
							
							 
							
							... 
							
							
							
							by other passes.  Make BCE pass be in anonymous namespace now.
llvm-svn: 3907 
							
						 
						
							2002-09-24 15:43:12 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								5325c5f340 
								
							 
						 
						
							
							
								
								Minor cleanups  
							
							 
							
							... 
							
							
							
							llvm-svn: 3904 
							
						 
						
							2002-09-24 00:09:26 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								b03832d5d0 
								
							 
						 
						
							
							
								
								Add new BreakCriticalEdges pass  
							
							 
							
							... 
							
							
							
							llvm-svn: 3903 
							
						 
						
							2002-09-24 00:08:39 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								555518c70f 
								
							 
						 
						
							
							
								
								Optimize away cases like:  
							
							 
							
							... 
							
							
							
							%cast109 = cast uint %cast212 to short          ; <short> [#uses=1]
        %cast214 = cast short %cast109 to uint          ; <uint> [#uses=1]
        %cast215 = cast uint %cast214 to short          ; <short> [#uses=1]
llvm-svn: 3897 
							
						 
						
							2002-09-23 23:39:43 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								28d103548d 
								
							 
						 
						
							
							
								
								Fix: ConstantMerge/2002-09-23-CPR-Update.ll  
							
							 
							
							... 
							
							
							
							Basically, this bug boiled down to calling replaceUsesOfWith on a constant,
which changed it's shape in an illegal way.  This pass now goes through all
of the trouble neccesary to do the replacement on constants.
llvm-svn: 3895 
							
						 
						
							2002-09-23 23:00:46 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								7ccb217f21 
								
							 
						 
						
							
							
								
								* Fix bug: CorrelatedExprs/2002-09-23-PHIUpdateBug.ll  
							
							 
							
							... 
							
							
							
							* Make sure "Changed" is updated correctly
llvm-svn: 3891 
							
						 
						
							2002-09-23 20:06:22 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								4037a261d8 
								
							 
						 
						
							
							
								
								Insert resolved constants into the global map so they are reused correctly.  
							
							 
							
							... 
							
							
							
							This bug was exposed linking the SPEC benchmark suite.
llvm-svn: 3888 
							
						 
						
							2002-09-23 18:14:15 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								facc751260 
								
							 
						 
						
							
							
								
								Don't insert a PHI node to merge "returns" from an inlined function if there  
							
							 
							
							... 
							
							
							
							is only a single return from the function!
llvm-svn: 3878 
							
						 
						
							2002-09-22 18:41:25 +00:00  
						
					 
				
					
						
							
							
								 
								Anand Shukla
							
						 
						
							 
							
							
							
							
								
							
							
								77dca14403 
								
							 
						 
						
							
							
								
								Added checking threshold  
							
							 
							
							... 
							
							
							
							llvm-svn: 3864 
							
						 
						
							2002-09-20 16:44:35 +00:00  
						
					 
				
					
						
							
							
								 
								Anand Shukla
							
						 
						
							 
							
							
							
							
								
							
							
								ea77a493ff 
								
							 
						 
						
							
							
								
								split retracing into a separate file  
							
							 
							
							... 
							
							
							
							llvm-svn: 3809 
							
						 
						
							2002-09-18 03:55:26 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								ebcd1d7c16 
								
							 
						 
						
							
							
								
								Removed unnecessary #includes.  
							
							 
							
							... 
							
							
							
							llvm-svn: 3802 
							
						 
						
							2002-09-18 02:07:57 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								892f59fcb2 
								
							 
						 
						
							
							
								
								Fixed typo.  
							
							 
							
							... 
							
							
							
							llvm-svn: 3801 
							
						 
						
							2002-09-18 00:42:45 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								22cbac6511 
								
							 
						 
						
							
							
								
								There is a #define in some header that conflicts with INFINITY, rename it.  
							
							 
							
							... 
							
							
							
							llvm-svn: 3797 
							
						 
						
							2002-09-17 23:46:33 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								a8339e3613 
								
							 
						 
						
							
							
								
								Fix bug: test/Regression/Transforms/InstCombine/2002-09-17-GetElementPtrCrash.ll  
							
							 
							
							... 
							
							
							
							Thanks to Casey for finding it!
llvm-svn: 3783 
							
						 
						
							2002-09-17 21:05:42 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								afb4fc189c 
								
							 
						 
						
							
							
								
								Fix FunctionInlining pass assertion failure:  
							
							 
							
							... 
							
							
							
							ilist:104: failed assertion `Traits::getNext(NodePtr) != 0 && "Dereferencing end()!"'
llvm-svn: 3768 
							
						 
						
							2002-09-16 22:30:20 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								ec3936ac0d 
								
							 
						 
						
							
							
								
								Fix: test/Regression/LLC/badidx.c problem  
							
							 
							
							... 
							
							
							
							llvm-svn: 3763 
							
						 
						
							2002-09-16 18:32:33 +00:00  
						
					 
				
					
						
							
							
								 
								Vikram S. Adve
							
						 
						
							 
							
							
							
							
								
							
							
								dba59921d7 
								
							 
						 
						
							
							
								
								Extract most of the transformation into an externally accessible  
							
							 
							
							... 
							
							
							
							function -- DecomposeArrayRef(GetElementPtrInst* GEP) -- that can
be invoked on a single instruction at a time.
llvm-svn: 3755 
							
						 
						
							2002-09-16 16:40:07 +00:00  
						
					 
				
					
						
							
							
								 
								Anand Shukla
							
						 
						
							 
							
							
							
							
								
							
							
								f94ad68e56 
								
							 
						 
						
							
							
								
								Incorporated changes in alloca and getElementPointer instruction  
							
							 
							
							... 
							
							
							
							llvm-svn: 3733 
							
						 
						
							2002-09-16 05:26:51 +00:00  
						
					 
				
					
						
							
							
								 
								Anand Shukla
							
						 
						
							 
							
							
							
							
								
							
							
								d9a6af0c27 
								
							 
						 
						
							
							
								
								Incorporated changes in alloca instruction  
							
							 
							
							... 
							
							
							
							llvm-svn: 3732 
							
						 
						
							2002-09-16 05:24:49 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								154cf64436 
								
							 
						 
						
							
							
								
								Fix bug I introduced  
							
							 
							
							... 
							
							
							
							llvm-svn: 3719 
							
						 
						
							2002-09-14 19:33:16 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								2e8086f046 
								
							 
						 
						
							
							
								
								Function.h is unnecessary when Module.h is included.  
							
							 
							
							... 
							
							
							
							llvm-svn: 3716 
							
						 
						
							2002-09-14 03:04:02 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								09d24c7374 
								
							 
						 
						
							
							
								
								Following Chris's advice, I'm pruning some unnecessary .h includes that I'm  
							
							 
							
							... 
							
							
							
							noticing. Since Module includes Function, and eventually, BasicBlock and
GlobalVariable, the last three are unnecessary to be included directly.
llvm-svn: 3713 
							
						 
						
							2002-09-14 02:06:53 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								fc91ee91e8 
								
							 
						 
						
							
							
								
								Change the MallocInst & AllocaInst ctors to take the allocated type, not the  
							
							 
							
							... 
							
							
							
							pointer type returned.
llvm-svn: 3711 
							
						 
						
							2002-09-13 22:28:50 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								322bf4f3a9 
								
							 
						 
						
							
							
								
								Change the MallocInst & AllocaInst ctors to take the allocated type, not the  
							
							 
							
							... 
							
							
							
							pointer type returned.
llvm-svn: 3710 
							
						 
						
							2002-09-13 22:28:45 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								674c9ff585 
								
							 
						 
						
							
							
								
								Fix bug I introduced with one of my previous changes.  
							
							 
							
							... 
							
							
							
							Thanks fly out to Nick for noticing it!  :)
llvm-svn: 3691 
							
						 
						
							2002-09-12 19:00:43 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								136dab7d86 
								
							 
						 
						
							
							
								
								- Change getelementptr instruction to use long indexes instead of uint  
							
							 
							
							... 
							
							
							
							indexes for sequential types.
llvm-svn: 3682 
							
						 
						
							2002-09-11 01:21:33 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								b9d9e0ff8d 
								
							 
						 
						
							
							
								
								- Change getelementptr instruction to use long indexes instead of uint  
							
							 
							
							... 
							
							
							
							indexes for sequential types.
llvm-svn: 3681 
							
						 
						
							2002-09-11 01:21:29 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								cbc532603a 
								
							 
						 
						
							
							
								
								Fix the last of the silly bugs I just introduced.  :(  
							
							 
							
							... 
							
							
							
							llvm-svn: 3674 
							
						 
						
							2002-09-10 23:46:10 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								3d7720ae7d 
								
							 
						 
						
							
							
								
								Fix bugs in previous checkins  
							
							 
							
							... 
							
							
							
							llvm-svn: 3673 
							
						 
						
							2002-09-10 23:31:28 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								9674b869e5 
								
							 
						 
						
							
							
								
								Fix bug in previous checkin  
							
							 
							
							... 
							
							
							
							llvm-svn: 3672 
							
						 
						
							2002-09-10 23:31:12 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								55f3d94b40 
								
							 
						 
						
							
							
								
								Add cannonicalization of shl X, 1 -> add X, X  
							
							 
							
							... 
							
							
							
							llvm-svn: 3671 
							
						 
						
							2002-09-10 23:04:09 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								e8c927f71a 
								
							 
						 
						
							
							
								
								Fix minor problems in previous checkin  
							
							 
							
							... 
							
							
							
							llvm-svn: 3669 
							
						 
						
							2002-09-10 22:52:51 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								db3f9bc948 
								
							 
						 
						
							
							
								
								Fix minor problems in previous checkin  
							
							 
							
							... 
							
							
							
							llvm-svn: 3668 
							
						 
						
							2002-09-10 22:52:49 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								f80f7b02b7 
								
							 
						 
						
							
							
								
								Clean up code due to auto-insert constructors  
							
							 
							
							... 
							
							
							
							llvm-svn: 3666 
							
						 
						
							2002-09-10 22:38:49 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								a239e6879d 
								
							 
						 
						
							
							
								
								Clean up code due to auto-insert constructors  
							
							 
							
							... 
							
							
							
							llvm-svn: 3665 
							
						 
						
							2002-09-10 22:38:47 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								97ff99cdf9 
								
							 
						 
						
							
							
								
								Clean up code  
							
							 
							
							... 
							
							
							
							llvm-svn: 3664 
							
						 
						
							2002-09-10 22:38:06 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								61c83bf12f 
								
							 
						 
						
							
							
								
								Fix bug: test/Regression/Transforms/LevelRaise/2002-09-10-PointerAdds.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 3658 
							
						 
						
							2002-09-10 19:42:53 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								28a8d2468a 
								
							 
						 
						
							
							
								
								Simplify code (somtimes dramatically), by using the new "auto-insert" feature  
							
							 
							
							... 
							
							
							
							of instruction constructors.
llvm-svn: 3656 
							
						 
						
							2002-09-10 17:04:02 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								5c447863d5 
								
							 
						 
						
							
							
								
								Simplify code (somtimes dramatically), by using the new "auto-insert" feature  
							
							 
							
							... 
							
							
							
							of instruction constructors.
llvm-svn: 3655 
							
						 
						
							2002-09-10 17:03:06 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								4184bcc701 
								
							 
						 
						
							
							
								
								* Clean up code a little bit  
							
							 
							
							... 
							
							
							
							* Fix bug: test/Regression/Transforms/IndVarsSimplify/2002-09-09-PointerIndVar.ll
llvm-svn: 3644 
							
						 
						
							2002-09-10 05:24:05 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								e103d178c5 
								
							 
						 
						
							
							
								
								Hack unneccesary now that shifts of pointers are no longer legal!  
							
							 
							
							... 
							
							
							
							llvm-svn: 3640 
							
						 
						
							2002-09-10 03:50:54 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								ff16f07017 
								
							 
						 
						
							
							
								
								Disallow creation of pointer typed shift instructions  
							
							 
							
							... 
							
							
							
							llvm-svn: 3637 
							
						 
						
							2002-09-09 20:25:21 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								5f00d66cc3 
								
							 
						 
						
							
							
								
								Factor silly code duplication out  
							
							 
							
							... 
							
							
							
							llvm-svn: 3627 
							
						 
						
							2002-09-08 21:47:54 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								b8bba6f765 
								
							 
						 
						
							
							
								
								Fix Bug: test/Regression/Transforms/InstCombine/2002-09-08-PointerShiftBug.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 3626 
							
						 
						
							2002-09-08 21:39:07 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								bdb147c373 
								
							 
						 
						
							
							
								
								Minor simplification  
							
							 
							
							... 
							
							
							
							llvm-svn: 3619 
							
						 
						
							2002-09-08 18:55:04 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								1871472e14 
								
							 
						 
						
							
							
								
								Initial checkin of Correlated Expression Elimination Pass  
							
							 
							
							... 
							
							
							
							llvm-svn: 3599 
							
						 
						
							2002-09-06 18:41:55 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								6a5364e46f 
								
							 
						 
						
							
							
								
								Fix file header to be accurate, instead of something I just copied and pasted.  
							
							 
							
							... 
							
							
							
							llvm-svn: 3591 
							
						 
						
							2002-09-06 03:59:56 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								50dd6724a2 
								
							 
						 
						
							
							
								
								Fix bug with critical edge splitting code where it wouldn't update PHI nodes  
							
							 
							
							... 
							
							
							
							in the old destination block to indicate that the value flows from the new
edge splitting block, not from the original multi-successor block.
llvm-svn: 3590 
							
						 
						
							2002-09-06 03:51:45 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								c2cd504569 
								
							 
						 
						
							
							
								
								Check in the implementation of critical edge detection and splitting  
							
							 
							
							... 
							
							
							
							llvm-svn: 3588 
							
						 
						
							2002-09-06 02:35:34 +00:00