Dan Gohman
							
						 
						
							 
							
							
							
							
								
							
							
								5c2e65b7bf 
								
							 
						 
						
							
							
								
								Don't look up the "dbg" metadata kind by name.  
							
							 
							
							... 
							
							
							
							llvm-svn: 108961 
							
						 
						
							2010-07-20 23:09:34 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								d8dedee96d 
								
							 
						 
						
							
							
								
								Use available typedef for " DenseMap<const Value*, Value*>".  
							
							 
							
							... 
							
							
							
							llvm-svn: 106699 
							
						 
						
							2010-06-24 00:00:42 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								b8f11de105 
								
							 
						 
						
							
							
								
								Cosmetic change.  
							
							 
							
							... 
							
							
							
							Do not use "ValueMap" as a name for a local variable or an argument.
llvm-svn: 106698 
							
						 
						
							2010-06-23 23:55:51 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								4423abd734 
								
							 
						 
						
							
							
								
								Use overloaded operators instead of DIDescriptor::getNode()  
							
							 
							
							... 
							
							
							
							llvm-svn: 103276 
							
						 
						
							2010-05-07 18:19:32 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								382b969647 
								
							 
						 
						
							
							
								
								There is no need to install ValueMapper.h header.  
							
							 
							
							... 
							
							
							
							llvm-svn: 101949 
							
						 
						
							2010-04-20 22:18:31 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								3b548aa8e2 
								
							 
						 
						
							
							
								
								Avoid using DIDescriptor.isNull().  
							
							 
							
							... 
							
							
							
							This is a first step towards eliminating checks in Descriptor constructors.
llvm-svn: 97975 
							
						 
						
							2010-03-08 20:52:55 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								bc97f6b757 
								
							 
						 
						
							
							
								
								Revert r97947.  
							
							 
							
							... 
							
							
							
							llvm-svn: 97963 
							
						 
						
							2010-03-08 19:20:38 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								fe28599f6f 
								
							 
						 
						
							
							
								
								Avoid using DIDescriptor.isNull().  
							
							 
							
							... 
							
							
							
							This is a first step towards eliminating unncessary constructor checks in light weight DIDescriptor wrappers.
llvm-svn: 97947 
							
						 
						
							2010-03-08 18:25:48 +00:00  
						
					 
				
					
						
							
							
								 
								Benjamin Kramer
							
						 
						
							 
							
							
							
							
								
							
							
								1266d46d32 
								
							 
						 
						
							
							
								
								Don't bother with sprintf, just pass the Twine through.  
							
							 
							
							... 
							
							
							
							llvm-svn: 94684 
							
						 
						
							2010-01-27 19:58:47 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								be94f23992 
								
							 
						 
						
							
							
								
								Remove dead debug info intrinsics.  
							
							 
							
							... 
							
							
							
							Intrinsic::dbg_stoppoint
 Intrinsic::dbg_region_start 
 Intrinsic::dbg_region_end 
 Intrinsic::dbg_func_start
AutoUpgrade simply ignores these intrinsics now.
llvm-svn: 92557 
							
						 
						
							2010-01-05 01:10:40 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								6a0ca6aa90 
								
							 
						 
						
							
							
								
								fix Analysis/DebugInfo.h to not include Metadata.h.  Do this  
							
							 
							
							... 
							
							
							
							by moving one method out of line and eliminating redundant checks
from other methods.
llvm-svn: 92337 
							
						 
						
							2009-12-31 03:02:08 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								9b493028df 
								
							 
						 
						
							
							
								
								rename "elements" of metadata to "operands".  "Elements" are  
							
							 
							
							... 
							
							
							
							things that occur in types.  "operands" are things that occur
in values.
llvm-svn: 92322 
							
						 
						
							2009-12-31 01:22:29 +00:00  
						
					 
				
					
						
							
							
								 
								Benjamin Kramer
							
						 
						
							 
							
							
							
							
								
							
							
								756d7086c1 
								
							 
						 
						
							
							
								
								Use an array instead of a SmallVector.  
							
							 
							
							... 
							
							
							
							llvm-svn: 92264 
							
						 
						
							2009-12-29 11:04:52 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								a0566979b7 
								
							 
						 
						
							
							
								
								Final step in the metadata API restructuring: move the  
							
							 
							
							... 
							
							
							
							getMDKindID/getMDKindNames methods to LLVMContext (and add
convenience methods to Module), eliminating MetadataContext.
Move the state that it maintains out to LLVMContext.
llvm-svn: 92259 
							
						 
						
							2009-12-29 09:01:33 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								6311212bf9 
								
							 
						 
						
							
							
								
								remove useless argument.  
							
							 
							
							... 
							
							
							
							llvm-svn: 92256 
							
						 
						
							2009-12-29 08:03:58 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								2f2aa2b067 
								
							 
						 
						
							
							
								
								This is a major cleanup of the instruction metadata interfaces that  
							
							 
							
							... 
							
							
							
							I asked Devang to do back on Sep 27.  Instead of going through the
MetadataContext class with methods like getMD() and getMDs(), just
ask the instruction directly for its metadata with getMetadata()
and getAllMetadata().
This includes a variety of other fixes and improvements: previously
all Value*'s were bloated because the HasMetadata bit was thrown into
value, adding a 9th bit to a byte.  Now this is properly sunk down to
the Instruction class (the only place where it makes sense) and it
will be folded away somewhere soon.
This also fixes some confusion in getMDs and its clients about 
whether the returned list is indexed by the MDID or densely packed.
This is now returned sorted and densely packed and the comments make
this clear.
This introduces a number of fixme's which I'll follow up on.
llvm-svn: 92235 
							
						 
						
							2009-12-28 23:41:32 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								7093946ab1 
								
							 
						 
						
							
							
								
								rename getMDKind -> getMDKindID, make it autoinsert if an MD Kind  
							
							 
							
							... 
							
							
							
							doesn't exist already, eliminate registerMDKind.  Tidy up a bunch
of random stuff.
llvm-svn: 92225 
							
						 
						
							2009-12-28 20:45:51 +00:00  
						
					 
				
					
						
							
							
								 
								Daniel Dunbar
							
						 
						
							 
							
							
							
							
								
							
							
								11881e2283 
								
							 
						 
						
							
							
								
								Add the braces gcc suggested.  
							
							 
							
							... 
							
							
							
							llvm-svn: 86933 
							
						 
						
							2009-11-12 02:52:56 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								f6eeaebd76 
								
							 
						 
						
							
							
								
								Implement support to debug inlined functions.  
							
							 
							
							... 
							
							
							
							llvm-svn: 86748 
							
						 
						
							2009-11-10 23:06:00 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								cdfb80de16 
								
							 
						 
						
							
							
								
								fix ConstantFoldCompareInstOperands to take the LHS/RHS as  
							
							 
							
							... 
							
							
							
							individual operands instead of taking a temporary array
llvm-svn: 86619 
							
						 
						
							2009-11-09 23:06:58 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								46b5c642b9 
								
							 
						 
						
							
							
								
								remove a bunch of extraneous LLVMContext arguments  
							
							 
							
							... 
							
							
							
							from various APIs, addressing PR5325.
llvm-svn: 86231 
							
						 
						
							2009-11-06 04:27:31 +00:00  
						
					 
				
					
						
							
							
								 
								Nick Lewycky
							
						 
						
							 
							
							
							
							
								
							
							
								974e12b2d3 
								
							 
						 
						
							
							
								
								Remove includes of Support/Compiler.h that are no longer needed after the  
							
							 
							
							... 
							
							
							
							VISIBILITY_HIDDEN removal.
llvm-svn: 85043 
							
						 
						
							2009-10-25 06:57:41 +00:00  
						
					 
				
					
						
							
							
								 
								Nick Lewycky
							
						 
						
							 
							
							
							
							
								
							
							
								02d5f77d26 
								
							 
						 
						
							
							
								
								Remove VISIBILITY_HIDDEN from class/struct found inside anonymous namespaces.  
							
							 
							
							... 
							
							
							
							Chris claims we should never have visibility_hidden inside any .cpp file but
that's still not true even after this commit.
llvm-svn: 85042 
							
						 
						
							2009-10-25 06:33:48 +00:00  
						
					 
				
					
						
							
							
								 
								Dan Gohman
							
						 
						
							 
							
							
							
							
								
							
							
								ef41a1ce3c 
								
							 
						 
						
							
							
								
								MapValue doesn't needs its LLVMContext argument.  
							
							 
							
							... 
							
							
							
							llvm-svn: 85020 
							
						 
						
							2009-10-24 23:37:16 +00:00  
						
					 
				
					
						
							
							
								 
								Dan Gohman
							
						 
						
							 
							
							
							
							
								
							
							
								e525d9ddc0 
								
							 
						 
						
							
							
								
								Remove an unnnecessary LLVMContext argument in  
							
							 
							
							... 
							
							
							
							ConstantFoldLoadThroughGEPConstantExpr.
llvm-svn: 83311 
							
						 
						
							2009-10-05 16:36:26 +00:00  
						
					 
				
					
						
							
							
								 
								Nick Lewycky
							
						 
						
							 
							
							
							
							
								
							
							
								42fb7452df 
								
							 
						 
						
							
							
								
								Instruction::clone does not need to take an LLVMContext&. Remove that and  
							
							 
							
							... 
							
							
							
							update all the callers.
llvm-svn: 82889 
							
						 
						
							2009-09-27 07:38:41 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								80ae34974b 
								
							 
						 
						
							
							
								
								Reapply 79977.  
							
							 
							
							... 
							
							
							
							Use MDNodes to encode debug info in llvm IR.
llvm-svn: 80406 
							
						 
						
							2009-08-28 23:24:31 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								d84dbb3443 
								
							 
						 
						
							
							
								
								smallvectorize the list of returns built by CloneAndPruneFunctionInto.  
							
							 
							
							... 
							
							
							
							llvm-svn: 80202 
							
						 
						
							2009-08-27 04:02:30 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								f08e35d9dc 
								
							 
						 
						
							
							
								
								Revert 79977. It causes llvm-gcc bootstrap failures on some platforms.  
							
							 
							
							... 
							
							
							
							llvm-svn: 80073 
							
						 
						
							2009-08-26 05:01:18 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								02aac922b4 
								
							 
						 
						
							
							
								
								Update DebugInfo interface to use metadata, instead of special named llvm.dbg.... global variables, to encode debugging information in llvm IR. This is mostly a mechanical change that tests metadata support very well.  
							
							 
							
							... 
							
							
							
							This change speeds up llvm-gcc by more then 6% at "-O0 -g" (measured by compiling InstructionCombining.cpp!)
llvm-svn: 79977 
							
						 
						
							2009-08-25 05:24:07 +00:00  
						
					 
				
					
						
							
							
								 
								Owen Anderson
							
						 
						
							 
							
							
							
							
								
							
							
								55f1c09e31 
								
							 
						 
						
							
							
								
								Push LLVMContexts through the IntegerType APIs.  
							
							 
							
							... 
							
							
							
							llvm-svn: 78948 
							
						 
						
							2009-08-13 21:58:54 +00:00  
						
					 
				
					
						
							
							
								 
								Owen Anderson
							
						 
						
							 
							
							
							
							
								
							
							
								b292b8ce70 
								
							 
						 
						
							
							
								
								Move more code back to 2.5 APIs.  
							
							 
							
							... 
							
							
							
							llvm-svn: 77635 
							
						 
						
							2009-07-30 23:03:37 +00:00  
						
					 
				
					
						
							
							
								 
								Owen Anderson
							
						 
						
							 
							
							
							
							
								
							
							
								4056ca9568 
								
							 
						 
						
							
							
								
								Move types back to the 2.5 API.  
							
							 
							
							... 
							
							
							
							llvm-svn: 77516 
							
						 
						
							2009-07-29 22:17:13 +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
							
						 
						
							 
							
							
							
							
								
							
							
								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
							
						 
						
							 
							
							
							
							
								
							
							
								38264b1554 
								
							 
						 
						
							
							
								
								"LLVMContext* " --> "LLVMContext *"  
							
							 
							
							... 
							
							
							
							llvm-svn: 74878 
							
						 
						
							2009-07-06 23:00:19 +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
							
						 
						
							 
							
							
							
							
								
							
							
								e70b637033 
								
							 
						 
						
							
							
								
								More LLVMContext-ification.  
							
							 
							
							... 
							
							
							
							llvm-svn: 74807 
							
						 
						
							2009-07-05 22:41:43 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								046bf624b9 
								
							 
						 
						
							
							
								
								While inlining, clone llvm.dbg.func.start intrinsic and adjust  
							
							 
							
							... 
							
							
							
							llvm.dbg.region.end instrinsic. This nested llvm.dbg.func.start/llvm.dbg.region.end pair now enables DW_TAG_inlined_subroutine support in code generator.
llvm-svn: 69118 
							
						 
						
							2009-04-15 00:17:06 +00:00  
						
					 
				
					
						
							
							
								 
								Duncan Sands
							
						 
						
							 
							
							
							
							
								
							
							
								1f15ca7c7a 
								
							 
						 
						
							
							
								
								Factorize out a concept - no functionality change.  
							
							 
							
							... 
							
							
							
							llvm-svn: 67454 
							
						 
						
							2009-03-21 21:27:31 +00:00  
						
					 
				
					
						
							
							
								 
								Duncan Sands
							
						 
						
							 
							
							
							
							
								
							
							
								a09e0afe74 
								
							 
						 
						
							
							
								
								Don't load values out of global constants with weak  
							
							 
							
							... 
							
							
							
							linkage: the value may be replaced with something
different at link time.  (Frontends that want to
allow values to be loaded out of weak constants can
give their constants weak_odr linkage).
llvm-svn: 67407 
							
						 
						
							2009-03-20 21:53:29 +00:00  
						
					 
				
					
						
							
							
								 
								Dale Johannesen
							
						 
						
							 
							
							
							
							
								
							
							
								900aaa3d1e 
								
							 
						 
						
							
							
								
								Don't consider debug intrinsics when checking  
							
							 
							
							... 
							
							
							
							whether a callee to be inlined is a leaf.
llvm-svn: 66588 
							
						 
						
							2009-03-10 22:20:02 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								4bed3565f3 
								
							 
						 
						
							
							
								
								Do not clone llvm.dbg.func.start and corresponding llvm.dbg.region.end during inlining.  
							
							 
							
							... 
							
							
							
							llvm-svn: 64209 
							
						 
						
							2009-02-10 07:48:18 +00:00  
						
					 
				
					
						
							
							
								 
								Andrew Lenharth
							
						 
						
							 
							
							
							
							
								
							
							
								5aa1cc4065 
								
							 
						 
						
							
							
								
								Correctly set attributes when removing args during cloning.  Fixes PR2765  
							
							 
							
							... 
							
							
							
							llvm-svn: 57254 
							
						 
						
							2008-10-07 18:08:38 +00:00  
						
					 
				
					
						
							
							
								 
								Duncan Sands
							
						 
						
							 
							
							
							
							
								
							
							
								dd7daee850 
								
							 
						 
						
							
							
								
								Factor code to copy global value attributes like  
							
							 
							
							... 
							
							
							
							the section or the visibility from one global
value to another: copyAttributesFrom.  This is
particularly useful for duplicating functions:
previously this was done by explicitly copying
each attribute in turn at each place where a
new function was created out of an old one, with
the result that obscure attributes were regularly
forgotten (like the collector or the section).
Hopefully now everything is uniform and nothing
is forgotten.
llvm-svn: 51567 
							
						 
						
							2008-05-26 19:58:59 +00:00  
						
					 
				
					
						
							
							
								 
								Nate Begeman
							
						 
						
							 
							
							
							
							
								
							
							
								ca270ad96f 
								
							 
						 
						
							
							
								
								Feedback from chris  
							
							 
							
							... 
							
							
							
							llvm-svn: 50271 
							
						 
						
							2008-04-25 17:45:52 +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  
						
					 
				
					
						
							
							
								 
								Nate Begeman
							
						 
						
							 
							
							
							
							
								
							
							
								6fed3b2038 
								
							 
						 
						
							
							
								
								Teach the PruningFunctionCloner how to look through loads with  
							
							 
							
							... 
							
							
							
							ConstantExpression GEPs pointing into constant globals.
llvm-svn: 50256 
							
						 
						
							2008-04-25 06:37:06 +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  
						
					 
				
					
						
							
							
								 
								Anton Korobeynikov
							
						 
						
							 
							
							
							
							
								
							
							
								d38b3fb127 
								
							 
						 
						
							
							
								
								Preserve calling convention during function cloning  
							
							 
							
							... 
							
							
							
							llvm-svn: 48708 
							
						 
						
							2008-03-23 16:03:00 +00:00  
						
					 
				
					
						
							
							
								 
								Nick Lewycky
							
						 
						
							 
							
							
							
							
								
							
							
								fb2c1a999a 
								
							 
						 
						
							
							
								
								Turn unwind_to into "unwinds to".  
							
							 
							
							... 
							
							
							
							llvm-svn: 48123 
							
						 
						
							2008-03-10 02:20:00 +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  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								d2265b45ae 
								
							 
						 
						
							
							
								
								Fix PR1850 by removing an unsafe transformation from VMCore/ConstantFold.cpp.  
							
							 
							
							... 
							
							
							
							Reimplement the xform in Analysis/ConstantFolding.cpp where we can use
targetdata to validate that it is safe.  While I'm in there, fix some const
correctness issues and generalize the interface to the "operand folder".
llvm-svn: 44817 
							
						 
						
							2007-12-10 22:53:04 +00:00  
						
					 
				
					
						
							
							
								 
								Duncan Sands
							
						 
						
							 
							
							
							
							
								
							
							
								ad0ea2d430 
								
							 
						 
						
							
							
								
								Fix PR1146: parameter attributes are longer part of  
							
							 
							
							... 
							
							
							
							the function type, instead they belong to functions
and function calls.  This is an updated and slightly
corrected version of Reid Spencer's original patch.
The only known problem is that auto-upgrading of
bitcode files doesn't seem to work properly (see
test/Bitcode/AutoUpgradeIntrinsics.ll).  Hopefully
a bitcode guru (who might that be? :) ) will fix it.
llvm-svn: 44359 
							
						 
						
							2007-11-27 13:23:08 +00:00  
						
					 
				
					
						
							
							
								 
								Anton Korobeynikov
							
						 
						
							 
							
							
							
							
								
							
							
								98638aede6 
								
							 
						 
						
							
							
								
								Forget to commit users part of value mapper interface  
							
							 
							
							... 
							
							
							
							llvm-svn: 43940 
							
						 
						
							2007-11-09 12:27:04 +00:00  
						
					 
				
					
						
							
							
								 
								Dan Gohman
							
						 
						
							 
							
							
							
							
								
							
							
								dcb291faa4 
								
							 
						 
						
							
							
								
								Change uses of Function::front to Function::getEntryBlock for readability.  
							
							 
							
							... 
							
							
							
							llvm-svn: 35265 
							
						 
						
							2007-03-22 16:38:57 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								4bd8cda3f0 
								
							 
						 
						
							
							
								
								switch the inliner from being recursive to being iterative.  
							
							 
							
							... 
							
							
							
							llvm-svn: 34832 
							
						 
						
							2007-03-02 03:11:20 +00:00  
						
					 
				
					
						
							
							
								 
								Reid Spencer
							
						 
						
							 
							
							
							
							
								
							
							
								557ab15e71 
								
							 
						 
						
							
							
								
								Apply the VISIBILITY_HIDDEN field to the remaining anonymous classes in  
							
							 
							
							... 
							
							
							
							the Transforms library. This reduces debug library size by 132 KB, debug
binary size by 376 KB, and reduces link time for llvm tools slightly.
llvm-svn: 33939 
							
						 
						
							2007-02-05 23:32:05 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								1bfc7ab6a7 
								
							 
						 
						
							
							
								
								Switch inliner over to use DenseMap instead of std::map for ValueMap.  This  
							
							 
							
							... 
							
							
							
							speeds up the inliner 16%.
llvm-svn: 33801 
							
						 
						
							2007-02-03 00:08:31 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								ce494229a1 
								
							 
						 
						
							
							
								
								Fix bugs in the inliner having to do with single-entry phi nodes and valuemap  
							
							 
							
							... 
							
							
							
							updating.  These were exposed by Devang's recent passmgr changes (with
non-default passorderings) because now the inliner can be interleved with
the LCSSA pass.
llvm-svn: 33760 
							
						 
						
							2007-02-01 18:48:38 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								024f4ab383 
								
							 
						 
						
							
							
								
								Adjust #includes to match movement of constant folding code from transformutils to libanalysis.  
							
							 
							
							... 
							
							
							
							llvm-svn: 33680 
							
						 
						
							2007-01-30 23:46:24 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								ad84a730ba 
								
							 
						 
						
							
							
								
								The inliner/cloner can now optionally take TargetData info, which can be  
							
							 
							
							... 
							
							
							
							used by constant folding.
llvm-svn: 33676 
							
						 
						
							2007-01-30 23:22:39 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								2c4610e4ca 
								
							 
						 
						
							
							
								
								Change constant folding APIs to take an optional TargetData, and change  
							
							 
							
							... 
							
							
							
							ConstantFoldInstOperands/ConstantFoldCall to take a pointer to an array
of operands + size, instead of an std::vector.
In some cases, switch to using a SmallVector instead of a vector.
This allows us to get rid of some special case gross code that was there
to avoid the cost of constructing a vector.
llvm-svn: 33670 
							
						 
						
							2007-01-30 23:13:49 +00:00  
						
					 
				
					
						
							
							
								 
								Reid Spencer
							
						 
						
							 
							
							
							
							
								
							
							
								cddc9dfe97 
								
							 
						 
						
							
							
								
								Implement review feedback for the ConstantBool->ConstantInt merge. Chris  
							
							 
							
							... 
							
							
							
							recommended that getBoolValue be replaced with getZExtValue and that
get(bool) be replaced by get(const Type*, uint64_t). This implements
those changes.
llvm-svn: 33110 
							
						 
						
							2007-01-12 04:24:46 +00:00  
						
					 
				
					
						
							
							
								 
								Zhou Sheng
							
						 
						
							 
							
							
							
							
								
							
							
								75b871fb1e 
								
							 
						 
						
							
							
								
								For PR1043:  
							
							 
							
							... 
							
							
							
							Merge ConstantIntegral and ConstantBool into ConstantInt.
Remove ConstantIntegral and ConstantBool from LLVM.
llvm-svn: 33073 
							
						 
						
							2007-01-11 12:24:14 +00:00  
						
					 
				
					
						
							
							
								 
								Reid Spencer
							
						 
						
							 
							
							
							
							
								
							
							
								266e42b312 
								
							 
						 
						
							
							
								
								For PR950:  
							
							 
							
							... 
							
							
							
							This patch removes the SetCC instructions and replaces them with the ICmp
and FCmp instructions. The SetCondInst instruction has been removed and
been replaced with ICmpInst and FCmpInst.
llvm-svn: 32751 
							
						 
						
							2006-12-23 06:05:41 +00:00  
						
					 
				
					
						
							
							
								 
								Jeff Cohen
							
						 
						
							 
							
							
							
							
								
							
							
								7d6f3db3e2 
								
							 
						 
						
							
							
								
								Unbreak VC++ build.  
							
							 
							
							... 
							
							
							
							llvm-svn: 31464 
							
						 
						
							2006-11-05 19:31:28 +00:00  
						
					 
				
					
						
							
							
								 
								Reid Spencer
							
						 
						
							 
							
							
							
							
								
							
							
								de46e48420 
								
							 
						 
						
							
							
								
								For PR786:  
							
							 
							
							... 
							
							
							
							Turn on -Wunused and -Wno-unused-parameter. Clean up most of the resulting
fall out by removing unused variables. Remaining warnings have to do with
unused functions (I didn't want to delete code without review) and unused
variables in generated code. Maintainers should clean up the remaining
issues when they see them. All changes pass DejaGnu tests and Olden.
llvm-svn: 31380 
							
						 
						
							2006-11-02 20:25:50 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								237ccf2a51 
								
							 
						 
						
							
							
								
								Second half of the fix for Transforms/Inline/inline_cleanup.ll  
							
							 
							
							... 
							
							
							
							This folds unconditional branches that are often produced by code
specialization.
llvm-svn: 30307 
							
						 
						
							2006-09-13 21:27:00 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								cdf2b1fc30 
								
							 
						 
						
							
							
								
								Remove dead #include  
							
							 
							
							... 
							
							
							
							llvm-svn: 28642 
							
						 
						
							2006-06-01 20:02:28 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								cc340c02a4 
								
							 
						 
						
							
							
								
								Make the "pruning cloner" smarter.  As it propagates constants through the  
							
							 
							
							... 
							
							
							
							code (while cloning) it often gets the branch/switch instructions.  Since it
knows that edges of the CFG are dead, it need not clone (or even look) at
the obviously dead blocks.  This should speed up the inliner substantially on
code where there are lots of inlinable calls to functions with constant
arguments.  On C++ code in particular, this kicks in.
llvm-svn: 28641 
							
						 
						
							2006-06-01 19:19:23 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								67c424e010 
								
							 
						 
						
							
							
								
								Fix some regression from the inliner patch I committed last night.  This fixes  
							
							 
							
							... 
							
							
							
							ldecod, lencod, and SPASS.
llvm-svn: 28523 
							
						 
						
							2006-05-27 17:28:13 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								3df13f4f22 
								
							 
						 
						
							
							
								
								Implement a new method, CloneAndPruneFunctionInto, as documented.  
							
							 
							
							... 
							
							
							
							llvm-svn: 28519 
							
						 
						
							2006-05-27 01:22:24 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								edad1288fd 
								
							 
						 
						
							
							
								
								Allow the code cloning interfaces to capture some important info about the  
							
							 
							
							... 
							
							
							
							code being cloned if the client wants.
llvm-svn: 25281 
							
						 
						
							2006-01-13 18:39:17 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								b1c9317bb4 
								
							 
						 
						
							
							
								
								Remove trailing whitespace  
							
							 
							
							... 
							
							
							
							llvm-svn: 21427 
							
						 
						
							2005-04-21 23:48:37 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								531f9e92d4 
								
							 
						 
						
							
							
								
								This mega patch converts us from using Function::a{iterator|begin|end} to  
							
							 
							
							... 
							
							
							
							using Function::arg_{iterator|begin|end}.  Likewise Module::g* -> Module::global_*.
This patch is contributed by Gabor Greif, thanks!
llvm-svn: 20597 
							
						 
						
							2005-03-15 04:54:21 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								63b38bd2ed 
								
							 
						 
						
							
							
								
								Fix #includes of i*.h => Instructions.h as per PR403.  
							
							 
							
							... 
							
							
							
							llvm-svn: 15334 
							
						 
						
							2004-07-29 17:30:56 +00:00  
						
					 
				
					
						
							
							
								 
								Brian Gaeke
							
						 
						
							 
							
							
							
							
								
							
							
								6182acf92a 
								
							 
						 
						
							
							
								
								Move RemapInstruction() to ValueMapper, so that it can be shared with  
							
							 
							
							... 
							
							
							
							CloneTrace, and because it is primarily an operation on ValueMaps.  It
is now a global (non-static) function which can be pulled in using
ValueMapper.h.
llvm-svn: 13600 
							
						 
						
							2004-05-19 09:08:12 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								39ad6f2772 
								
							 
						 
						
							
							
								
								Minor speedup, don't query ValueMap each time through the loop  
							
							 
							
							... 
							
							
							
							llvm-svn: 11123 
							
						 
						
							2004-02-04 21:44:26 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								a6578ef318 
								
							 
						 
						
							
							
								
								Give CloneBasicBlock an optional function argument to specify which function  
							
							 
							
							... 
							
							
							
							to add the cloned block to.  This allows the block to be added to the function
immediately, and all of the instructions to be immediately added to the function
symbol table, which speeds up the inliner from 3.7 -> 3.38s on the PR209.
llvm-svn: 11107 
							
						 
						
							2004-02-04 01:19:43 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								df3c342a4c 
								
							 
						 
						
							
							
								
								Finegrainify namespacification  
							
							 
							
							... 
							
							
							
							llvm-svn: 10727 
							
						 
						
							2004-01-09 06:12:26 +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  
						
					 
				
					
						
							
							
								 
								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
							
						 
						
							 
							
							
							
							
								
							
							
								e9f4232a70 
								
							 
						 
						
							
							
								
								Refactor CloneFunction to expose the new CloneBasicBlock function  
							
							 
							
							... 
							
							
							
							llvm-svn: 5806 
							
						 
						
							2003-04-18 03:50:09 +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
							
						 
						
							 
							
							
							
							
								
							
							
								e4dbb1af42 
								
							 
						 
						
							
							
								
								Initial checkin of Module cloning support stuff  
							
							 
							
							... 
							
							
							
							llvm-svn: 4788 
							
						 
						
							2002-11-20 20:47:41 +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
							
						 
						
							 
							
							
							
							
								
							
							
								33422fedc2 
								
							 
						 
						
							
							
								
								*** empty log message ***  
							
							 
							
							... 
							
							
							
							llvm-svn: 2813 
							
						 
						
							2002-06-30 16:25:25 +00:00  
						
					 
				
					
						
							
							
								 
								Anand Shukla
							
						 
						
							 
							
							
							
							
								
							
							
								2ac04a0083 
								
							 
						 
						
							
							
								
								changes to make it compatible with 64bit gcc  
							
							 
							
							... 
							
							
							
							llvm-svn: 2795 
							
						 
						
							2002-06-25 21:18:19 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								fda72b1aad 
								
							 
						 
						
							
							
								
								*** empty log message ***  
							
							 
							
							... 
							
							
							
							llvm-svn: 2777 
							
						 
						
							2002-06-25 16:12:52 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								7608a46cbe 
								
							 
						 
						
							
							
								
								Updates to move some header files out of include/llvm/Transforms into  
							
							 
							
							... 
							
							
							
							the Scalar and Utils subdirectories
llvm-svn: 2523 
							
						 
						
							2002-05-07 18:36:35 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								f998685cd9 
								
							 
						 
						
							
							
								
								s/Method/Function  
							
							 
							
							... 
							
							
							
							llvm-svn: 2336 
							
						 
						
							2002-04-27 07:27:19 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								16bfdb5f02 
								
							 
						 
						
							
							
								
								New clone function routine  
							
							 
							
							... 
							
							
							
							llvm-svn: 2045 
							
						 
						
							2002-03-29 19:03:54 +00:00