Owen Anderson
							
						 
						
							 
							
							
							
							
								
							
							
								23a204d91b 
								
							 
						 
						
							
							
								
								Move getTrue() and getFalse() to 2.5-like APIs.  
							
							 
							
							... 
							
							
							
							llvm-svn: 77685 
							
						 
						
							2009-07-31 17:39:07 +00:00  
						
					 
				
					
						
							
							
								 
								Owen Anderson
							
						 
						
							 
							
							
							
							
								
							
							
								b292b8ce70 
								
							 
						 
						
							
							
								
								Move more code back to 2.5 APIs.  
							
							 
							
							... 
							
							
							
							llvm-svn: 77635 
							
						 
						
							2009-07-30 23:03:37 +00:00  
						
					 
				
					
						
							
							
								 
								Daniel Dunbar
							
						 
						
							 
							
							
							
							
								
							
							
								0dd5e1ed39 
								
							 
						 
						
							
							
								
								More migration to raw_ostream, the water has dried up around the iostream hole.  
							
							 
							
							... 
							
							
							
							- Some clients which used DOUT have moved to DEBUG. We are deprecating the
   "magic" DOUT behavior which avoided calling printing functions when the
   statement was disabled. In addition to being unnecessary magic, it had the
   downside of leaving code in -Asserts builds, and of hiding potentially
   unnecessary computations.
llvm-svn: 77019 
							
						 
						
							2009-07-25 00:23:56 +00:00  
						
					 
				
					
						
							
							
								 
								Owen Anderson
							
						 
						
							 
							
							
							
							
								
							
							
								edb4a70325 
								
							 
						 
						
							
							
								
								Revert the ConstantInt constructors back to their 2.5 forms where possible, thanks to contexts-on-types.  More to come.  
							
							 
							
							... 
							
							
							
							llvm-svn: 77011 
							
						 
						
							2009-07-24 23:12:02 +00:00  
						
					 
				
					
						
							
							
								 
								Owen Anderson
							
						 
						
							 
							
							
							
							
								
							
							
								47db941fd3 
								
							 
						 
						
							
							
								
								Get rid of the Pass+Context magic.  
							
							 
							
							... 
							
							
							
							llvm-svn: 76702 
							
						 
						
							2009-07-22 00:24:57 +00:00  
						
					 
				
					
						
							
							
								 
								Owen Anderson
							
						 
						
							 
							
							
							
							
								
							
							
								c37bc69e91 
								
							 
						 
						
							
							
								
								Rename getConstantInt{True|False} to get{True|False} at Chris' behest.  
							
							 
							
							... 
							
							
							
							llvm-svn: 76598 
							
						 
						
							2009-07-21 18:03:38 +00:00  
						
					 
				
					
						
							
							
								 
								Dan Gohman
							
						 
						
							 
							
							
							
							
								
							
							
								c43e47938a 
								
							 
						 
						
							
							
								
								Make makeLoopInvariant report whether it made any changes or not,  
							
							 
							
							... 
							
							
							
							and use this to simplify more code.
llvm-svn: 75722 
							
						 
						
							2009-07-15 01:25:43 +00:00  
						
					 
				
					
						
							
							
								 
								Dan Gohman
							
						 
						
							 
							
							
							
							
								
							
							
								4d6149f356 
								
							 
						 
						
							
							
								
								Update LoopSimplify and LoopUnswitch to use the new makeLoopInvariant  
							
							 
							
							... 
							
							
							
							function.
llvm-svn: 75584 
							
						 
						
							2009-07-14 01:37:59 +00:00  
						
					 
				
					
						
							
							
								 
								Owen Anderson
							
						 
						
							 
							
							
							
							
								
							
							
								1e5f00e7a7 
								
							 
						 
						
							
							
								
								This started as a small change, I swear.  Unfortunately, lots of things call the [I|F]CmpInst constructors.  Who knew!?  
							
							 
							
							... 
							
							
							
							llvm-svn: 75200 
							
						 
						
							2009-07-09 23:48:35 +00:00  
						
					 
				
					
						
							
							
								 
								Owen Anderson
							
						 
						
							 
							
							
							
							
								
							
							
								39f00cc1d4 
								
							 
						 
						
							
							
								
								Thread LLVMContext through the constant folding APIs, which touches a lot of files.  
							
							 
							
							... 
							
							
							
							llvm-svn: 74844 
							
						 
						
							2009-07-06 18:42:36 +00:00  
						
					 
				
					
						
							
							
								 
								Owen Anderson
							
						 
						
							 
							
							
							
							
								
							
							
								80baed63b4 
								
							 
						 
						
							
							
								
								Second batch of passes using LLVMContext.  
							
							 
							
							... 
							
							
							
							llvm-svn: 74753 
							
						 
						
							2009-07-03 00:54:20 +00:00  
						
					 
				
					
						
							
							
								 
								Duncan Sands
							
						 
						
							 
							
							
							
							
								
							
							
								1efabaaa2a 
								
							 
						 
						
							
							
								
								Allow readonly functions to unwind exceptions.  Teach  
							
							 
							
							... 
							
							
							
							the optimizers about this.  For example, a readonly
function with no uses cannot be removed unless it is
also marked nounwind.
llvm-svn: 71071 
							
						 
						
							2009-05-06 06:49:50 +00:00  
						
					 
				
					
						
							
							
								 
								Nick Lewycky
							
						 
						
							 
							
							
							
							
								
							
							
								bfd4ad67c7 
								
							 
						 
						
							
							
								
								Remove strange extra semicolons.  
							
							 
							
							... 
							
							
							
							llvm-svn: 67287 
							
						 
						
							2009-03-19 05:51:39 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								43a1161379 
								
							 
						 
						
							
							
								
								If "optimize for size" attribute is set then block non-trivial loop unswitches but allow trivial loop unswitches.  
							
							 
							
							... 
							
							
							
							llvm-svn: 63670 
							
						 
						
							2009-02-03 22:04:27 +00:00  
						
					 
				
					
						
							
							
								 
								Duncan Sands
							
						 
						
							 
							
							
							
							
								
							
							
								5a913d61e3 
								
							 
						 
						
							
							
								
								Rename getAnalysisToUpdate to getAnalysisIfAvailable.  
							
							 
							
							... 
							
							
							
							llvm-svn: 63198 
							
						 
						
							2009-01-28 13:14:17 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								1c469d36b0 
								
							 
						 
						
							
							
								
								Undo previous patch.  
							
							 
							
							... 
							
							
							
							llvm-svn: 60701 
							
						 
						
							2008-12-08 17:02:37 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								2b07d3ccde 
								
							 
						 
						
							
							
								
								switch a couple more calls to use array_pod_sort.  
							
							 
							
							... 
							
							
							
							llvm-svn: 60337 
							
						 
						
							2008-12-01 06:52:57 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								fe57d109b6 
								
							 
						 
						
							
							
								
								Ignore conditions that are outside the loop.  
							
							 
							
							... 
							
							
							
							llvm-svn: 58631 
							
						 
						
							2008-11-03 19:38:07 +00:00  
						
					 
				
					
						
							
							
								 
								Daniel Dunbar
							
						 
						
							 
							
							
							
							
								
							
							
								7f39e2d85a 
								
							 
						 
						
							
							
								
								Change create*Pass factory functions to return Pass* instead of  
							
							 
							
							... 
							
							
							
							LoopPass*.
 - Although less precise, this means they can be used in clients
   without RTTI (who would otherwise need to include LoopPass.h, which
   eventually includes things using dynamic_cast). This was the
   simplest solution that presented itself, but I am happy to use a
   better one if available.
llvm-svn: 58010 
							
						 
						
							2008-10-22 23:32:42 +00:00  
						
					 
				
					
						
							
							
								 
								Dan Gohman
							
						 
						
							 
							
							
							
							
								
							
							
								215742a966 
								
							 
						 
						
							
							
								
								Use 0 instead of false to return a null pointer.  
							
							 
							
							... 
							
							
							
							llvm-svn: 57660 
							
						 
						
							2008-10-17 00:56:52 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								9eb525d4f9 
								
							 
						 
						
							
							
								
								Implement function notes as function attributes.  
							
							 
							
							... 
							
							
							
							llvm-svn: 56716 
							
						 
						
							2008-09-26 23:51:19 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								4c758ea3e0 
								
							 
						 
						
							
							
								
								Large mechanical patch.  
							
							 
							
							... 
							
							
							
							s/ParamAttr/Attribute/g
s/PAList/AttrList/g
s/FnAttributeWithIndex/AttributeWithIndex/g
s/FnAttr/Attribute/g
This sets the stage 
- to implement function notes as function attributes and 
- to distinguish between function attributes and return value attributes.
This requires corresponding changes in llvm-gcc and clang.
llvm-svn: 56622 
							
						 
						
							2008-09-25 21:00:45 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								e15607b7bb 
								
							 
						 
						
							
							
								
								Put FN_NOTE_AlwaysInline and others in FnAttr namespace.  
							
							 
							
							... 
							
							
							
							llvm-svn: 56527 
							
						 
						
							2008-09-24 00:06:15 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								e87abd26ba 
								
							 
						 
						
							
							
								
								Move FN_NOTE_AlwaysInline and other out of ParamAttrs namespace.  
							
							 
							
							... 
							
							
							
							Do not check isDeclaration() in hasNote(). It is clients' responsibility.
llvm-svn: 56524 
							
						 
						
							2008-09-23 23:52:03 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								82fed6702b 
								
							 
						 
						
							
							
								
								Use parameter attribute store (soon to be renamed) for  
							
							 
							
							... 
							
							
							
							Function Notes also. Function notes are stored at index ~0.
llvm-svn: 56511 
							
						 
						
							2008-09-23 22:35:17 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								329fe728b5 
								
							 
						 
						
							
							
								
								Add hasNote() to check note associated with a function.  
							
							 
							
							... 
							
							
							
							llvm-svn: 56477 
							
						 
						
							2008-09-22 22:32:29 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								40519f0370 
								
							 
						 
						
							
							
								
								A loop may be unswitched multiple times. Reconstruct dom info. at the end.  
							
							 
							
							... 
							
							
							
							llvm-svn: 55806 
							
						 
						
							2008-09-04 22:43:59 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								00ec74616b 
								
							 
						 
						
							
							
								
								Initialize loop data first.  
							
							 
							
							... 
							
							
							
							llvm-svn: 55792 
							
						 
						
							2008-09-04 20:36:36 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								d52071540c 
								
							 
						 
						
							
							
								
								Do not unswitch if the function notes say we're optimizing this function for size.  
							
							 
							
							... 
							
							
							
							llvm-svn: 55786 
							
						 
						
							2008-09-04 18:55:13 +00:00  
						
					 
				
					
						
							
							
								 
								Dan Gohman
							
						 
						
							 
							
							
							
							
								
							
							
								a79db30d28 
								
							 
						 
						
							
							
								
								Tidy up several unbeseeming casts from pointer to intptr_t.  
							
							 
							
							... 
							
							
							
							llvm-svn: 55779 
							
						 
						
							2008-09-04 17:05:41 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								eb611ddeb2 
								
							 
						 
						
							
							
								
								Do not try to update dominator info while manipulating CFG.  This code does not handle all cases and keeps invalid dom info around some cases, which misleads other passes down stream.  
							
							 
							
							... 
							
							
							
							Right now, dom info is recaluclated in the end if the loop is switched.
llvm-svn: 53106 
							
						 
						
							2008-07-03 17:37:52 +00:00  
						
					 
				
					
						
							
							
								 
								Bill Wendling
							
						 
						
							 
							
							
							
							
								
							
							
								a96eabaab7 
								
							 
						 
						
							
							
								
								Remove unused function.  
							
							 
							
							... 
							
							
							
							llvm-svn: 53090 
							
						 
						
							2008-07-03 07:10:03 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								226edd1826 
								
							 
						 
						
							
							
								
								Remove extra FIXME  
							
							 
							
							... 
							
							
							
							llvm-svn: 53087 
							
						 
						
							2008-07-03 06:50:04 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								c4dcf82a16 
								
							 
						 
						
							
							
								
								Reconstruct dom info, if loop is unswitched.  
							
							 
							
							... 
							
							
							
							llvm-svn: 53086 
							
						 
						
							2008-07-03 06:48:21 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								e491bb8845 
								
							 
						 
						
							
							
								
								LoopUnswitch does not preserve dominator info in all cases.  
							
							 
							
							... 
							
							
							
							llvm-svn: 53085 
							
						 
						
							2008-07-03 05:55:03 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								7dcfff392a 
								
							 
						 
						
							
							
								
								Undo previous patch. It is not that simple to fix dom info here.  
							
							 
							
							... 
							
							
							
							llvm-svn: 53062 
							
						 
						
							2008-07-03 00:08:13 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								5adfcb5783 
								
							 
						 
						
							
							
								
								Preserve dom info while simplifing loop after the unswitch.  
							
							 
							
							... 
							
							
							
							llvm-svn: 53052 
							
						 
						
							2008-07-02 22:58:54 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								ed50fb5b61 
								
							 
						 
						
							
							
								
								reuse vectors.  
							
							 
							
							... 
							
							
							
							llvm-svn: 53007 
							
						 
						
							2008-07-02 01:44:29 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								57d94d6304 
								
							 
						 
						
							
							
								
								Fix comment.  
							
							 
							
							... 
							
							
							
							llvm-svn: 53006 
							
						 
						
							2008-07-02 01:31:19 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								e149d4ed4d 
								
							 
						 
						
							
							
								
								Preserve loop data so that it is not fetched everytime it is needed.  
							
							 
							
							... 
							
							
							
							Keep track of currentLoop.
llvm-svn: 53005 
							
						 
						
							2008-07-02 01:18:13 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								cd6b697945 
								
							 
						 
						
							
							
								
								Preserve dominance frontier while trivially unswitching loop.  
							
							 
							
							... 
							
							
							
							llvm-svn: 52438 
							
						 
						
							2008-06-18 02:16:38 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								7314d0ee3c 
								
							 
						 
						
							
							
								
								Update dom tree. Fix PR 2372.  
							
							 
							
							... 
							
							
							
							llvm-svn: 51887 
							
						 
						
							2008-06-02 22:52:56 +00:00  
						
					 
				
					
						
							
							
								 
								Dan Gohman
							
						 
						
							 
							
							
							
							
								
							
							
								f96e1371e8 
								
							 
						 
						
							
							
								
								Tidy up BasicBlock::getFirstNonPHI, and change a bunch of places to  
							
							 
							
							... 
							
							
							
							use it instead of duplicating its functionality.
llvm-svn: 51499 
							
						 
						
							2008-05-23 21:05:58 +00:00  
						
					 
				
					
						
							
							
								 
								Dan Gohman
							
						 
						
							 
							
							
							
							
								
							
							
								d78c400b5b 
								
							 
						 
						
							
							
								
								Clean up the use of static and anonymous namespaces. This turned up  
							
							 
							
							... 
							
							
							
							several things that were neither in an anonymous namespace nor static
but not intended to be global.
llvm-svn: 51017 
							
						 
						
							2008-05-13 00:00:25 +00:00  
						
					 
				
					
						
							
							
								 
								Dan Gohman
							
						 
						
							 
							
							
							
							
								
							
							
								6a2da37c0e 
								
							 
						 
						
							
							
								
								Make several variable declarations static.  
							
							 
							
							... 
							
							
							
							llvm-svn: 50696 
							
						 
						
							2008-05-06 01:53:16 +00:00  
						
					 
				
					
						
							
							
								 
								Nick Lewycky
							
						 
						
							 
							
							
							
							
								
							
							
								4d43d3c72c 
								
							 
						 
						
							
							
								
								Remove 'unwinds to' support from mainline. This patch undoes r47802 r47989  
							
							 
							
							... 
							
							
							
							r48047 r48084 r48085 r48086 r48088 r48096 r48099 r48109 and r48123.
llvm-svn: 50265 
							
						 
						
							2008-04-25 16:53:59 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								559c867ece 
								
							 
						 
						
							
							
								
								fit some more code in 80 cols.  
							
							 
							
							... 
							
							
							
							llvm-svn: 50016 
							
						 
						
							2008-04-21 00:25:49 +00:00  
						
					 
				
					
						
							
							
								 
								Gabor Greif
							
						 
						
							 
							
							
							
							
								
							
							
								e9ecc68d8f 
								
							 
						 
						
							
							
								
								API changes for class Use size reduction, wave 1.  
							
							 
							
							... 
							
							
							
							Specifically, introduction of XXX::Create methods
for Users that have a potentially variable number of
Uses.
llvm-svn: 49277 
							
						 
						
							2008-04-06 20:25:17 +00:00  
						
					 
				
					
						
							
							
								 
								Nick Lewycky
							
						 
						
							 
							
							
							
							
								
							
							
								11fc6f8765 
								
							 
						 
						
							
							
								
								Update the block cloner which fixes bugpoint on code using unwind_to (phew!)  
							
							 
							
							... 
							
							
							
							and also update the cloning interface's major user, the loop optimizations.
llvm-svn: 48088 
							
						 
						
							2008-03-09 05:24:34 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								f3ebc3f3d2 
								
							 
						 
						
							
							
								
								Remove attribution from file headers, per discussion on llvmdev.  
							
							 
							
							... 
							
							
							
							llvm-svn: 45418 
							
						 
						
							2007-12-29 20:36:04 +00:00